第7章 Directory Server スレッドの数の設定
同時接続を処理するために Directory Server が使用するスレッドの数は、サーバーのパフォーマンスに影響します。たとえば、すべてのスレッドが時間のかかるタスク (add 操作など) の処理に追われている場合、新しい受信接続は、空いているスレッドがリクエストを処理できるようになるまでキューに置かれます。
サーバーが提供する CPU スレッド数が少ない場合、スレッド数を多く設定することでパフォーマンスが向上します。ただし、CPU スレッドが多数あるサーバーでは、設定値が高すぎてもパフォーマンスは向上しません。
デフォルトでは、Directory Server はスレッド数を自動的に計算します。この数値は、インスタンス起動時のサーバーのハードウェアリソースに基づいています。
注記
Red Hat は、自動チューニング設定の使用を推奨します。スレッド数は手動で設定しないでください。
7.1. 自動スレッドチューニング リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
自動スレッドチューニングを有効にすると、Directory Server は以下の最適化されたスレッド数を使用します。
CPU スレッド数
|
Directory Server スレッド数
|
---|---|
1-16
|
16
|
17-512
|
Directory Server スレッド数は、システムの CPU スレッド数と一致します。たとえば、システムに 24 の CPU スレッドがある場合、Directory Server は 24 のスレッドを使用します。Directory Server スレッドの最大数は 512 です。
|
512 以上
|
512。Directory Server は、推奨される最大スレッド数を適用します。
|
7.1.1. コマンドラインを使用した自動スレッドチューニングの有効化 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Directory Server は、利用可能なハードウェアスレッドに基づいてスレッド数を自動的に設定できます。この機能を有効にするには、以下を実行します。
- スレッド数の自動設定を有効にします。
dsconf -D "cn=Directory Manager" ldap://server.example.com config replace nsslapd-threadnumber="-1"
# dsconf -D "cn=Directory Manager" ldap://server.example.com config replace nsslapd-threadnumber="-1"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Directory Server インスタンスを再起動します。
dsctl instance_name restart
# dsctl instance_name restart
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
重要
スレッド数の自動設定を有効にした場合、
nsslapd-threadnumber
パラメーターには、Directory Server の実行中に計算されたスレッド数が表示されます。
7.1.2. Web コンソールを使用した自動スレッドチューニングの有効化 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Directory Server は、利用可能なハードウェアスレッドに基づいてスレッド数を自動的に設定できます。この機能を有効にするには、以下を実行します。
- Web コンソールで Directory Server ユーザーインターフェイスを開きます。詳細は、『Red Hat Directory Server Administration Guide』のLogging Into Directory Server Using the Web Consoleセクションを参照してください。
- インスタンスを選択します。
- Tuning & Limits を選択します。メニューを開いて、
- Number Of Worker Threads フィールドを -1 に設定します。
- Restart Instance を選択します。ボタンをクリックし、
重要
自動設定を有効にした場合、Number Of Worker Threads フィールドには、Directory Server の実行中に計算されたスレッド数が表示されます。