8.2. 手動スレッドプールの調整
多くの環境、設定、およびワークロードでは、Open Liberty スレッドプールに手動の設定またはチューニングは必要ありません。スレッドプールの自己チューニングは、最適なサーバーのスループットを提供するために必要なスレッド数を決定します。スレッドプールコントローラーは、コアスレッド および
maxThreads 属性に定義されたバインド内のプール内のスレッド数を継続的に調整 し
ます。ただし、コアスレッドまたは maxThreads
属性の設定が 必要
になることがあります。以下のセクションでは、これらの属性を説明し、手動で調整する必要がある可能性のある条件の例を示します。
coreThreads
この属性は、プール内のスレッドの最小数を指定します。この属性の最小値は 4 です。Open Liberty は、スレッドの数がこの属性の値と同じになるまで、提供された作業ごとに新しいスレッドを作成します。coreThreads属性
が設定されていない場合、デフォルトは Open Liberty プロセスで利用可能なハードウェアスレッドの数の倍数に設定されます。Open Liberty を共有環境で実行されている場合は、スレッドプールコントローラーが利用可能な CPU を共有する他のプロセスに対応できません。このような場合、coreThreads 属性のデフォルト値により
、
Open Liberty が CPU リソースの競合している他のプロセスを考慮して、最適なスレッドを作成する可能性があります。このような場合には、Open Liberty の実行
に必要な CPU リソースの割合のみを反映する coreThreads 属性の値を値に制限することができます。maxThreads
この属性は、プール内のスレッドの最大数を指定します。デフォルト値は -1(MAX_INT
と同等)、または実質的に無制限です。一部の環境では、プロセスが作成できるスレッド数にハード制限を設定します。現在、Open Liberty は現在、そのような上限が適用されるかどうか、または値が何であるかを知る方法がありません。Open Liberty がスレッド制限環境で実行されている場合、Operator は
maxThreads
属性を許可される値に設定できます。
Open Liberty スレッドプールコントローラーは、さまざまなワークロードおよび設定を処理するように設計されています。エッジによっては、コアスレッド および
maxThreads
属性の調整が必要になる場合があります。ただし、まずデフォルトの動作を試して、調整を行う必要があります。