WebSphere Application Server は、SOAP over HTTP メッセージのトランスポート層の一部として、WS-ReliableMessaging を使用します。
API 層でサポートされるこのメッセージ交換パターンは、片方向の「応答不要送信」または双方向の要求と応答です。
信頼性は Web サービス要求元と Web サービス・プロバイダー間にある、高信頼性メッセージング・ミドルウェアによって提供されます。
このミドルウェア層は、以下の図で点線の下に示され、高信頼性メッセージ送信元および高信頼性メッセージ宛先を含みます。
注: 双方向プログラミング API で WS-ReliableMessaging を使用する場合は、要求側アプリケーションが失敗し、再始動されると、その応答メッセージを受信しなくなります。
このモデルでは、WS-ReliableMessaging はネットワーク障害から保護するためにだけ、使用されています。
さらに、以下のような特徴があります。
- クライアント側の再送信は、クライアントがサービスに新しいメッセージの送信を開始した後でのみ、開始されます (これは、片方向操作および双方向操作のどちらにも当てはまります)。
- 再開した双方向操作は、応答メッセージをすぐにクライアント・アプリケーションに戻せません。このメッセージは、クライアント上のインバウンド・シーケンスまでしか戻されません。
図 1. Web サービス・メッセージを確実に交換するために使用される対話。
上の図では、アプリケーション・ソースは、Web サービスを起動します。
対話の手順は以下のとおりです。
- 呼び出しが、高信頼性メッセージ送信元へ渡されます。
- 高信頼性メッセージング送信元は、メッセージを保管してから制御をアプリケーションに戻します。
- 高信頼性メッセージ送信元は、メッセージを高信頼性メッセージ宛先に送信します。
- 高信頼性メッセージ宛先は、メッセージを受信すると、ローカルに保管し肯定応答を高信頼性メッセージ送信元に戻します。
- ここで高信頼性メッセージ送信元は、そのメッセージのコピーを削除することができます。
- 高信頼性メッセージ宛先は、高信頼性メッセージ送信元からメッセージを受信したらいつでもそれをアプリケーション宛先に送信することができます。
Web サービス・アプリケーションを構成して、WS-ReliableMessaging を使用するには、WS-ReliableMessaging ポリシー・タイプを含むポリシー・セットを接続します。このポリシー・タイプは、管理対象パーシスタント、管理対象非パーシスタント、または管理対象外非パーシスタントなど、さまざまなサービスの品質を提供します。
管理対象のサービス品質 (管理対象パーシスタントおよび管理対象非パーシスタント) は、サービス統合バスでサポートされます。 アプリケーションとポリシー・セット間の接続ごとに、信頼性の高いメッセージング・プロトコル状態を確立するために使用する、バスおよびメッセージング・エンジンを選択できます。