Microservices Engine (MSE) で ZooKeeper エンジンを作成すると、デフォルトパラメーター値が適用されます。タイミング、セッションタイムアウト、接続、データパラメーターを変更して、ワークロードに合わせてエンジンパフォーマンスを最適化できます。
前提条件
開始する前に、以下を完了していることを確認してください。
パラメーターリファレンス
タイミングパラメーター
TickTime は ZooKeeper の基本時間単位です。他のタイミングパラメーターは TickTime の倍数として表現されます。
| パラメーター | 説明 |
|---|---|
TickTime | ハートビートとタイムアウトを調整する基本時間単位。すべてのティックベースのパラメーターはこの値を参照します。 |
InitLimit | フォロワーがリーダーに接続して同期するための最大時間 (ティック単位)。実際のタイムアウトは InitLimit に TickTime を乗算した値に等しくなります。 |
SyncLimit | フォロワーがリーダーと同期するための最大時間 (ティック単位)。遅れすぎたフォロワーは切断されます。 |
セッションタイムアウトパラメーター
| パラメーター | 説明 |
|---|---|
SessionTimeout | クライアントがネゴシエートするセッションタイムアウト。サーバーはこの値を MinSessionTimeout と MaxSessionTimeout で定義された範囲に制限します。 |
MinSessionTimeout | サーバーがクライアントにネゴシエートを許可する最小セッションタイムアウト。 |
MaxSessionTimeout | サーバーがクライアントにネゴシエートを許可する最大セッションタイムアウト。 |
注: セッションタイムアウトパラメーターを設定するには、オープンソースの ZooKeeper バージョンから MSE ZooKeeper バージョンにアップグレードしてください。詳細については、「ZooKeeper エディションの機能」をご参照ください。
接続およびデータパラメーター
| パラメーター | 説明 |
|---|---|
MaxClientCnxns | IP アドレスあたりの同時クライアント接続の最大数。 |
Jute.Maxbuffer | 単一の znode が保存できる最大データサイズ (バイト単位)。 |
OpenSuperAcl | ZooKeeper エンジンでスーパーアクセス制御リスト (ACL) アクセスを有効にします。 |
エンジンパラメーターの変更
MSE コンソールにログインし、上部のナビゲーションバーでリージョンを選択します。
左側のナビゲーションウィンドウで、マイクロサービスレジストリ > インスタンス を選択します。
「[インスタンス]」ページで、インスタンスの名前をクリックします。
左側のナビゲーションウィンドウで、Parameter Settings をクリックします。左上隅にある Edit をクリックし、その後、パラメーターを設定します。

Save and Restart Instance をクリックします。
インスタンスが再起動したら、Parameter Settings ページに戻り、パラメーターの値が更新されていることを確認してください。
セッションタイムアウトネゴシエーションの仕組み
クライアントが ZooKeeper エンジンに接続すると、サーバーとクライアントはセッションタイムアウトをネゴシエートします。サーバーは設定された範囲を強制します。
クライアントタイムアウトが
MinSessionTimeoutより小さい場合、サーバーはそれをMinSessionTimeoutの値でオーバーライドします。クライアントタイムアウトが
MaxSessionTimeoutより大きい場合、サーバーはそれをMaxSessionTimeoutの値でオーバーライドします。
有効なタイムアウト範囲は常に [MinSessionTimeout, MaxSessionTimeout] です。
例: ZooKeeper エンジンで MinSessionTimeout が 3,000 ミリ秒、MaxSessionTimeout が 5,000 ミリ秒に設定されているとします。クライアントが 1,000 ミリ秒 (最小) および 6,000 ミリ秒 (最大) のセッションタイムアウトを要求した場合、ネゴシエーション後、有効な最小セッションタイムアウトは 3,000 ミリ秒、有効な最大セッションタイムアウトは 5,000 ミリ秒になります。
本番環境での考慮事項
MinSessionTimeoutとMaxSessionTimeoutを非常に小さい値に設定することは避けてください。小さい値は、クライアントが接続タイムアウトを頻繁に検出する原因となり、セッションを切断し、システム障害につながる可能性があります。ワークロードが特定のチューニングを必要としない限り、デフォルト値を使用してください。