このページでは、Memorystore for Redis Cluster で使用できる maxmemory ポリシーとその他の Redis 構成について説明します。
このページに記載されている構成を変更する方法については、インスタンスを構成するをご覧ください。
maxmemory ポリシー
インスタンスのメモリがいっぱいになり、新しい書き込みが発生すると、Redis はキーのエビクションを行い、インスタンスの maxmemory ポリシーに基づいて書き込み用にスペースを確保します。Memorystore for Redis Cluster のデフォルトの maxmemory ポリシーは volatile-lru
です。次のいずれかの maxmemory ポリシーを使用することもできます。
noeviction
: インスタンスが maxmemory に達するとエラーを返します。 データの上書きや削除は行いません。allkeys-lfu
: キーセット全体から、使用頻度の最も低い(LFU)キーを削除します。allkeys-lru
: キーセット全体から、最も長い間使用されていない(LRU)キーを削除します。volatile-lfu
: TTL(有効期間)期限が設定されている、使用頻度の低いキーを削除します。volatile-lru
: TTL 期限が設定されている、最も長い間使用されていない(LRU)キーを削除します。allkeys-random
: キースペース全体からランダムにキーを削除します。volatile-random
:TTL 期限が設定されたキーの中から、ランダムにキーを削除します。volatile-ttl
: TTL 期限が設定されたキーのうち、最も短い TTL を持つキーを削除します。
変更可能な構成パラメータ
Memorystore for Redis Cluster インスタンスを作成または更新する際に、次のパラメータを変更できます。
パラメータ | 説明 | 使用できる値 |
---|---|---|
maxmemory-clients | Redis 7.0 以降。この構成を使用すると、ユーザーはクライアントの最大メモリ使用量を制御できます。 通常/pubsub クライアントの合計メモリ使用量。上限に達すると、メモリ使用量が最も多いクライアント削除されます。 |
指定できる値は 0% ~100% の整数パーセント値です。クライアント ストレージが制限されるインスタンスの最大メモリの割合を表します。デフォルト値はノードタイプによって異なります。詳細については、ノードの特性をご覧ください。 |
maxmemory | エビクション ポリシーを有効にする調整可能な上限を指定します。maxmemory 上限は個々のノードレベルで設定しますが、設定はすべてのノードに適用されます。たとえば、3 つのノードを持つインスタンスがあり、58 GB の redis-highmem-xlarge ノードタイプを使用し、maxmemory を合計インスタンス容量の 90% に設定するとします。これを行うには、maxmemory をノード容量の 90% である 52.2 GB に設定します。これはすべてのノードに適用され、インスタンスの maxmemory 上限が 90% に設定されます。デフォルトの予約済みオーバーヘッドの詳細については、キースペースの容量と予約済みオーバーヘッドをご覧ください。
|
インスタンスの maxmemory 上限。 以下の単位がサポートされます。 b デフォルト)k kb m mb g gb |
maxmemory-policy | インスタンス データが maxmemory の上限に達すると Redis が行う動作を指定します。各ポリシーの詳細については、Maxmemory ポリシーをご覧ください。オープンソースの Redis maxmemory ポリシーについてさらに詳しくは、オープンソースの Redis の LRU キャッシュ ページをご覧ください。 |
noeviction allkeys-lru volatile-lru (デフォルト)allkeys-random volatile-random volatile-ttl volatile-lfu (Redis バージョン 4.0 以降)allkeys-lfu (Redis バージョン 4.0 以降) |
notify-keyspace-events | 特定のキースペース イベントの通知をクライアントに登録できるようにします。 詳細については、Redis キースペースの通知をご覧ください。 |
"" イベントなし(デフォルト) K キースペース イベント。__keyspace@<db>__ 接頭辞付きで公開されます。 E キーイベント イベント。__keyevent@<db>__ 接頭辞付きで公開されます。 g DEL、EXPIRE、RENAME などの一般的なコマンド $ 文字列コマンド l リストコマンド s セットコマンド h ハッシュコマンド z ソートされたセットコマンド x 期限切れイベント(キーが期限切れになるたびに生成されるイベント) e 削除されたイベント(maxmemory のためにキーが削除された場合に生成されるイベント) A g$lshzxe のエイリアス。したがって、「AKE」文字列は全イベントを意味します。 |
slowlog-log-slower-than | 低速ログを構成できます。実行時間のしきい値(マイクロ秒単位)を指定します。コマンドがこのしきい値を超えると、低速ログに追加されます。 | デフォルト値は 10000 です。 値が 0 の場合、すべてのコマンドのロギングが強制されます。一方、値を -1 にすると、スローログが無効になります。その他の負の値は拒否されます。 |
maxclients | インスタンスの maxclients 構成を構成できます。インスタンスの最大クライアント上限とデフォルトについては、最大クライアント数をご覧ください。 | デフォルト値はノードタイプによって異なります。詳細については、ノードの特性をご覧ください。 |