Web Services Addressing: ファイアウォールと中間ノード
この製品の Web Services Addressing (WS-Addressing) サポートを使用することにより、ファイアウォールと中間ノードに分散できるエンドポイント参照を作成できます。
WS-Addressing サポートを使用すると、エンドポイント参照が生成されるノード上のエンドポイントを表すエンドポイント参照を自動的に生成することができます。これらのエンドポイント参照には、エンドポイント用に構成された URL と、エンドポイントをホストするサーバーの有効なプロキシー構成に基づく適切なアドレス情報が含まれています。 クライアントからエンドポイント参照がターゲットとなったメッセージは、以下のトポロジー・シナリオで説明されているように、適切な中間ノード (複数可) を通じてエンドポイントに送付されます。
IBM 専有の API 使用すると、ワークロード管理してはいけないサービス (その理由は、例えばこのサービスはメモリー内の状態を保持するため) を表すエンドポイント参照を作成することもできます。ステートフル・セッション Bean を使用するサービスは、特定のサーバー・インスタンスへのルーティング・アフィニティーに基づくサービスの一例です。
そのようなサービスへのエンドポイント参照を作成するには、
EndpointReferenceManager.createEndpointReference(QName serviceName, String
endpointName, java.rmi.Remote statefulSessionBean) メソッドを使用します。
以下のトポロジー・シナリオで説明されているように、ステートフル・セッション Bean の高可用性を使用可能にし、このメソッドを使用してエンドポイント参照を作成する場合、要求がバージョン 6.1 以降の WebSphere® Application Server クライアントから発生するか、または同一の管理セルの Proxy Server for IBM®
WebSphere Application Server によって送付されるのであれば、たとえステートフル・セッション Bean がフェイルオーバーしてもエンドポイント参照は依然として有効です。
- クラスター構成以外の構成には、直接接続トポロジーを使用してください。
- エンドポイント参照が、以下のサービスを参照する場合は、HTTP サーバー (IBM HTTP Server など)トポロジーを使用してください。
- ワークロード管理クラスターでデプロイされるサービス
- 特定のサーバーにローカライズされるステートフル情報にアクセスしないサービス
- エンドポイント参照が以下のサービスを参照する場合は、IBM WebSphere Application Server のプロキシー・サーバートポロジーまたは Proxy Server for IBM WebSphere Application Server と連携する HTTP サーバートポロジーを参照してください。
- ワークロード管理クラスターでデプロイされるサービス
- オプションで、特定のサーバーにローカライズされるステートフル情報にアクセスするサービス
- オプションで、HA 構成でフェイルオーバーできるサービス
IBM WebSphere Application Server トポロジー用のプロキシー・サーバーを持つ HTTP サーバーは、HTTP サーバー自身に、WS-Addressing エンドポイントへのアフィニティー・ルーティングのための総合的な機能がない場合に、便利です。
特定のサーバーにローカライズされるステートフル情報にアクセスしないサービスを参照するエンドポイント参照の場合は、以下のすべてのトポロジー・シナリオが適合します。
直接接続
このトポロジーはクラスター構成以外の構成に使用してください。


標準の JAX-WS API を使用して作成されたエンドポイント参照はワークロード管理されません。
IBM WebSphere Application Server のプロキシー・サーバー
ワークロード管理されているクラスターにデプロイされ、オプションで特定のサーバーにローカライズされているステートフル情報にアクセスし、さらにオプションで、高可用性構成でフェイルオーバーできるサービスをエンドポイント参照が参照する場合は、このトポロジーを使用してください。

![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
- エンドポイント参照がステートフル・セッション Bean を表している場合、そのエンドポイント参照がターゲットになっている要求は、サーバーと、そのステートフル・セッションのインスタンスとの親和性を維持します。
- エンドポイント参照が高可用性のステートフル・セッション Bean を表している場合、エンドポイント参照は、ステートフル・セッション Bean が別のサーバーにフェイルオーバーされた場合でも有効です。
エンドポイント参照によりアドレス指定されるプロキシーが、バージョン 6.1 以降の IBM
WebSphere Application Server のプロキシー・サーバーであり、エンドポイントと同じ管理セルに存在する場合は、ワークロード管理されるエンドポイント参照へのメッセージが、クラスターに基づいてワークロード管理されます。
HTTP サーバー (IBM HTTP Server など)
エンドポイント参照が、ワークロード管理クラスターでデプロイされ、特定のサーバーにローカライズされるステートフル情報にアクセスしないサービスを参照する場合は、このトポロジーを使用してください。

このトポロジーでは、ステートフル・セッション Bean を表すエンドポイント参照をデプロイしないでください。これは、HTTP サーバーがそのステートフル・セッション Bean へのアフィニティーを保持せず、使用可能なサーバーに要求を分散してしまうからです。
IBM 専有の API を使用して作成されたエンドポイント参照のステートフル・セッション Bean の親和性と可用性を維持するには、次のトポロジーで説明しているように、HTTP サーバーの他に Proxy Server for IBM
WebSphere Application Server を使用します。
Proxy Server for IBM WebSphere Application Server と連携する HTTP サーバー
ワークロード管理クラスターでデプロイされ、オプションで特定のサーバーにローカライズされるステートフル情報にアクセスし、さらにオプションで HA 構成でフェイルオーバーできるサービスを、エンドポイント参照が参照する場合は、このトポロジーを使用してください。 トポロジーは IBM WebSphere Application Server トポロジーのプロキシー・サーバーと同等のものですが、HTTP サーバーを外部リバース・プロキシーとして使用することをサポートしています。
このトポロジーでは、WS-Addressing API は、ターゲット Web サービス・モジュール用に構成された HTTP サーバーの URL 接頭部に基づいて、適切なエンドポイント参照を自動的に生成します。 ユーザーは HTTP のエンドポイント URL 情報を指定する必要があります。つまり、それぞれのアプリケーションの各デプロイメントに HTTP URL 接頭部を構成する必要があります。

![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
- エンドポイント参照がステートフル・セッション Bean を表している場合、そのエンドポイント参照がターゲットになっている要求は、サーバーと、そのステートフル・セッションのインスタンスとの親和性を維持します。
- エンドポイント参照が高可用性のステートフル・セッション Bean を表している場合、エンドポイント参照は、ステートフル・セッション Bean が別のサーバーにフェイルオーバーされた場合でも有効です。
エンドポイント参照によりアドレス指定されるプロキシーが、バージョン 6.1 以降の IBM
WebSphere Application Server のプロキシー・サーバーであり、エンドポイントと同じ管理セルに存在する場合は、ワークロード管理されるエンドポイント参照へのメッセージが、クラスターに基づいてワークロード管理されます。