特殊な管理 > Windchill の環境の設定 > Windchill Configuration Assistant を使用した Windchill の設定 > 設定時の処理 > configureWindchill > サーバーマネージャとメソッドサーバーの最適な設定を計算する
  
サーバーマネージャとメソッドサーバーの最適な設定を計算する
メモリ領域のサイズを計算した後、Windchill Configuration Assistant は、設定するメソッドサーバーの数をチェックします。その際、メソッドサーバーのメモリ領域のサイズと CPU 数が両方とも考慮されます。
configureMethodServerService ターゲットは、オペレーティングシステムから報告された CPU 数に基づいて、メソッドサーバーとバックグラウンドメソッドサーバーの数を計算します。次に、Configurator.properties で定義されているメソッドサーバーの CPU 比率を含むルックアップテーブルを参照して、CPU 数に適したメソッドサーバーの数を決定します。別のルックアップテーブルを使用し、オペレーティングシステムおよびメソッドサーバーのメモリ領域サイズに基づいて、最適なメソッドサーバー数を決定します。複数のメソッドサーバーが推奨され、現在対話モードで実行していない場合、そのうち 1 つのメソッドサーバーがバックグラウンドメソッドサーバーとして設定されます。その他すべてのメソッドサーバーは、フォアグラウンドメソッドサーバーとして設定されます。対話モードで実行しており、複数のメソッドサーバーを実行できるだけの十分なリソースが検出された場合、バックグラウンドメソッドサーバーを設定するためのプロンプトが表示されます。バックグラウンドメソッドサーバーを設定しない場合は、このプロンプトで n を入力します。
現在の Windchill システムがクラスタに属していると判断した場合、Windchill Configuration Assistant は、クラスタマスターとして構成されているホスト上にバックグラウンドメソッドサーバーを設定する方法のみを推奨します。
複数のバックグラウンドメソッドサーバーを設定する場合、追加のバックグラウンドメソッドサーバーを手動で設定する必要があります。複数のバックグラウンドメソッドサーバーの設定については、バックグラウンドメソッドサーバーの設定を参照してください。
以下の例では、8 CPU に対して 3 つのメソッドサーバーが推奨されており、バックグラウンドメソッドサーバーの設定を指定しています。
configureMethodServerService:
[echo] Recommended number of MethodServers for 8 CPUs = 3
[echo] set outputProperty to default =3
[echo] Recommended number of MethodServers for 6100MB on Windows 7 (64bit) is 3
[echo] Recommended number of MethodServers based on available resources=3
[input] Enter number of MethodServers to configure (current=1): [3]
[input] Enter MethodServer max heap size (MB): [2033]
[echo] Setting max heap size for MethodServer to 2033
[input] Enter MethodServer initial heap size (MB): [2033]
[echo] Setting initial heap size for MethodServer to 2033
[input] Do you want to configure a BackgroundMethodServer (y/n)? ([y], n)
[echo] Configuring Background MethodServer
Windchill Configuration Assistant がバックグラウンドメソッドサーバーを設定するとき、フォアグラウンドメソッドサーバーの 1 つをバックグラウンドメソッドサーバーとして指定し、フォアグラウンドメソッドサーバーの数を 1 つ減らします。メソッドサーバー (バックグラウンドメソッドサーバーを含む) のメモリは、メソッドサーバーのメモリ領域から割り当てられます。
メソッドサーバー (バックグラウンドメソッドサーバーを含む) には、すべて同じ Java ヒープサイズが割り当てられます。メソッドサーバーのヒープ領域を、バックグラウンドメソッドサーバーとフォアグラウンドメソッドサーバーの合計数で除算した値がヒープサイズとなります。計算されたヒープサイズは、オペレーティングシステムおよびメモリモデルで指定されているヒープサイズ制限 (32 ビット、64 ビットなど) を超えることはできません。上の例では、バックグラウンドメソッドサーバーとフォアグラウンドメソッドサーバーの両方に 2033 MB のヒープが割り当てられています。
次に、サーバーマネージャのヒープサイズが設定されています。対話的に、表示されたデフォルト (allocatePhysMem で計算されたサーバーマネージャメモリ領域) を使用するか、独自の値を入力できます。次の例では、デフォルト値が使用されています。
configureServerManager:
[input] Enter ServerManager max heap size (MB): [812]
[echo] Setting max heap size for ServerManager to 812
[input] Enter ServerManager initial heap size (MB): [812]
[echo] Setting initial heap size for ServerManager to 812
メソッドサーバーの数、およびメソッドサーバーとサーバーマネージャの両方のヒープサイズを設定すると、追加の Java コマンドラインオプションが設定されます。これらのコマンドラインオプションは、ガーベジコレクションのスループットを最大化するために、ヒープ生成サイズを細かく調整します (同時実行スレッドの数を含む)。
Windchill で使用する Java コレクターでは、ガーベジコレクション全体の一時停止時間を軽減するために複数の CPU が使用されます。Windchill では単一システム上で複数の JVM が使用されます。Windchill Configuration Assistant では、メソッドサーバーとサーバーマネージャの両方のガーベジコレクションに使用できる同時実行スレッドの数を指定することで、ガーベジコレクションを調整できます。Assistant はデフォルト値を決定し、Assistant の実行時にこれらの値を表示します。次の例では、メソッドサーバーごとに 2 つのスレッドが推奨されています。
[echo] Calculated ParallelGCThreads=2
[input] Enter MethodServer parallel GC threads: [2]
次の例では、サーバーマネージャごとに 2 つのスレッドが推奨されています。
[echo] Calculated ParallelGCThreads=2
[input] Enter ServerManager parallel GC threads: [2]