![[z/OS]](../images/ngzos.gif)
WebSphere Application Server for z/OS に対する Java 管理拡張 MBean マルチプロセス・モデル要求フロー
Java™ Management Extensions (JMX) 動的プロキシー機能を使用すると、JMX 操作に依存するアプリケーションは、 サーバー・アーキテクチャーが単一プロセス・モデルを使用するにしても、 マルチプロセス・モデルを使用するにしても、一貫性のある動作を示すことができます。
製品のランタイムが提供する MBean はすべて、 分散プラットフォームによって採用されている単一プロセス・モデルでも、z/OS® 用の製品によって採用されている マルチプロセス・モデルでも実行できます。 ユーザー MBean プロバイダーは、MBean が分散プラットフォームと z/OS の両方の製品で機能するように、MBean を変更しなければならない場合もあります。詳細情報については、 アプリケーション・プログラミング・インターフェースの文書を参照してください。
- MBean と同一のサーバント・プロセスのもとで実行しているアプリケーション・コンポーネントの内側。
- JMX コネクター (SOAP、リモート・メソッド呼び出し (RMI)、HTTP など) の 1 つを介したサーバーの外側。
アプリケーション・コンポーネントから来る要求は、通常、 次のフローをたどります。 アプリケーション・コンポーネントが要求をサーバント・コンポーネントに送信します。 サーバント・コンポーネントは、その要求を、 MBean 用の動的プロキシーが実行している制御プロセスにリダイレクトします。 WebSphere® Application Server は、ランタイム中に MBean 動的プロキシーを自動的に生成します。MBean プロバイダーがユニコール・オプションで定義したメソッドを、要求が呼び出すと、 制御プロセス内の動的プロキシーは、MVS™ ワークロード管理 (WLM) を使用して、 その作業を無作為に 1 つのサーバント・プロセスにディスパッチします。 MBean プロバイダーがマルチコール・オプションで定義したメソッドを要求が呼び出すと、 制御プロセス内の動的プロキシーは、WLM を使用して、 MBean をアクティブ化したすべてのサーバント・プロセスに作業を分散します。
アプリケーション・コンポーネントに関連した MBean は、WLM がサーバント・プロセスを開始したときに、MBean アクティブ化プロセスの一環として、制御プロセス内で動的プロキシーに自動的に登録されます。 例えば、アプリケーション・コンポーネントによって作成され、動的に登録された MBean など、単一サーバント・プロセス内でアクティブにされた MBean は、マルチコール操作に参加できません。MBean の登録方法については、『カスタム MBean による WebSphere Application Server 管理システムの拡張』を参照してください。
作業をオプションで完了する個々のサーバント・プロセスは、 応答を制御プロセスに戻します。 MBean がユニコール・オプションで定義されており、かつ戻りの型がボイド以外である場合は、 制御プロセスは応答を、要求を行ったサーバントに戻します。その後、サーバント・サーバー・コンポーネントは、 応答をアプリケーション・コンポーネントに戻します。 MBean がマルチコール・オプションで定義された場合、個々のサーバント・プロセス内の MBean は、 個別に実行され、要求の処理をそれぞれ異なる時点で終了します。 要求がすべて処理された後に、 アプリケーション・コンポーネントに結果を正しく戻すために、結果集約 およびイベント集約が 必要になる場合があります。
サーバー外部のリモート・ロケーションから来る要求は、 一般に次のフローをたどります。 リモート・ロケーションは、 MBean 用の動的プロキシーを実行している制御プロセスに要求を送信します。WebSphere Application Server は、ランタイム中に MBean 動的プロキシーを自動的に生成します。要求プロセスの次の部分は、 アプリケーション・コンポーネントから発信された要求と同様に動作します。 MBean プロバイダーがユニコール・オプションで定義したメソッドを、要求が呼び出すと、 制御プロセス内の動的プロキシーは、MVS ワークロード管理 (WLM) を使用して、 MBean をアクティブ化したサーバント・プロセスのリスト内にある 1 つのサーバント・プロセスに 作業をランダムにディスパッチします。MBean プロバイダーがマルチコール・オプションで定義したメソッドを 要求が呼び出すと、制御プロセス内の動的プロキシーは、WLM を使用して、 MBean をアクティブ化したすべてのサーバント・プロセスに作業を分散します。
リモート・ロケーションへの応答のフローは、 アプリケーション・コンポーネントへの応答に類似しています。 作業をオプションで完了する個々のサーバント・プロセスは、 応答を制御プロセスに戻します。 MBean がユニコール・オプションで定義されており、 かつ戻りの型がボイド以外である場合は、制御プロセスは応答をリモート・ロケーションに戻します。MBean が マルチコール・オプションで定義された場合、個々のサーバント・プロセス内で実行する MBean は、 個別に実行され、要求の処理をそれぞれ異なる時点で終了します。 すべての要求が処理された後に、結果をリモート・ロケーションに正しく戻すために、結果集約およびイベント集約が必要になる場合があります。