dynamic-hz パラメーターは、Redis 5.0 で追加された新しいパラメーターです。 このパラメーターで、バックグラウンドタスク頻度の動的制御を有効または無効にすることができます。 頻度の動的制御を有効にすると、クライアント接続数に基づいてバックグラウンドタスクの頻度が自動的に変更されます。
前提条件
ApsaraDB for Redis インスタンスのエンジンバージョンは、Redis 5.0 以降です。
hz パラメーターと dynamic-hz パラメーターの関係
ApsaraDB for Redis は、タイムアウトしたクライアント接続を閉じる、期限切れのキーを削除するなど、さまざまなバックグラウンドタスクをサポートします。 hz パラメーターには、ApsaraDB for Redis のバックグラウンドタスクの頻度を指定します。 詳細については、「バックグラウンドタスクの頻度の変更」をご参照ください。 ただし、頻度が固定されていると、次の問題が生じます。
- 頻度が低すぎる場合、多数のクライアント接続がタイムアウトしたり、多数のキーが期限切れになったときに、リソースをタイムリーにリサイクルできません。 これにより、ApsaraDB for Redis のパフォーマンスの低下やクラッシュを招く可能性があります。
- 頻度が高すぎる場合、バックグラウンドタスクは多くの CPU リソースを消費します。 ApsaraDB for Redis のパフォーマンスが低下する可能性があります。
CPU 使用率とバックグラウンドタスクの効率の間でバランスを取るため、Redis 5.0 では dynamic-hz パラメーターが提供され、バックグラウンドタスク頻度の動的制御を有効または無効にすることができます。 また、Redis 5.0 にはユーザーが設定した頻度であることを示す configured_hz パラメーターが追加され、実際の頻度を示す場合は元の hz パラメーターを使用します。
dynamic-hz パラメーターの有効な値は、yes
と no
です。 値を yes にすると頻度の動的制御は有効になり、値を no にすると頻度の動的制御は無効になります。 デフォルト値は yes
です。 頻度の動的制御が有効になると、hz パラメーターに指定した値が、ベースライン頻度として configured_hz パラメーターに割り当てられます。 ApsaraDB for Redis は、クライアント接続数に基づいて
hz パラメーターの値を自動的に変更します。 hz パラメーターの値は、クライアント接続数とともに増加します。 したがって、バックグラウンドタスクはより頻繁に実行されます。