特殊な管理 > Windchill の環境の設定 > Windchill ランタイム環境 > サーバーソフトウェアのコンポーネント > サーバーマネージャ
  
サーバーマネージャ
サーバーマネージャとは、各サーバーホストで稼働する Java アプリケーションを指します。サーバーマネージャのプライマリ役割は一連のメソッドサーバーを管理することですが、ユーザーセッション認証の保守、およびバックグラウンド処理やほかのシステム管理機能も管理します。
Windchill サーバーホストには、サーバーマネージャのインスタンスが 1 つあります。これは、独自の Java 仮想マシン (VM) で実行され、Windchill システムで使用できると考えられる場合に稼働している必要があります。インスタンスは常に稼働している必要があるので、このプロセスを Windchill デーモンとして表示できます。
複数のサーバー VM を実行することは、Java アーキテクチャの要件ではありません。信頼性とスケーラビリティを高めるため、Windchill にはこのアーキテクチャが実装されています。複数のメソッドサーバーが稼働できると、1 つの VM 内での共有リソースの競合が制限要因となった場合、高パフォーマンスのマルチプロセッサハードウェアが 1 つの VM で完全に使用不可能になる危険性を抑えることができます。複数のプロセスを使用すると、各 VM の容量以上にシステムそのものを拡張できるので処理するトランザクション率が高くなります。
たとえば、指定のタイプ II (ネイティブメソッド) JDBC ドライバ実装が複数の同時 DB トランザクションスレッドで同期障害を示し始めた場合、第 2 のメソッドサーバーが同時トランザクションに対してシステムの能力を 2 倍にできます。
メソッドサーバーはサーバーマネージャと異なり Windchill 以外のプログラマが開発しカスタマイズされた Java コードが実行されるので、このアーキテクチャでは信頼性も配慮されます。Java VM は信頼性が非常に高いスレッドセーフ環境で、間違ったコードによるほかのスレッドへの影響が抑えられていますが、メモリ消費またはリソースのデッドロックの形で不安定になることもあります。メソッドサーバーでは、データベースのインタフェースまたはほかのアプリケーションに固有のインタフェースにネイティブ (非 Java) のライブラリを使用することもあります。ネイティブライブラリには、VM 全体を不安定にしてしまうようなバグが含まれていることもあります。Windchill システムのデーモン (サーバーマネージャ) とメソッドサーバーのインスタンスを別々の VM に分けておくと、Windchill システムが使用できなくなったりユーザーの検証情報を失ったりすることなく、個々のメソッドサーバーを強制終了できます。
パフォーマンスに関する問題は、メソッドサーバーとサーバーマネージャ間、あるいはクライアントとサーバーマネージャ間で必要なプロセス間の通信を最小限に抑えることによって対処できます。クライアントはサーバーマネージャを使用してメソッドサーバーを 1 度バインドした後、メソッドサーバーを直接呼び出します。メソッドサーバーが後で利用 (強制終了) できなくなると、自動例外処理によってクライアントが新規のものに再びバインドされます。