WS-ReliableMessaging のサービスの品質

WS-ReliableMessaging を使用すると、信頼性の高いメッセージング状態の管理に使用されるストアが提供する耐久性レベルとトランザクション・サポートのレベルに応じて、さまざまなサービス品質を取得できます。 このサービス品質は、ネットワークでのメッセージ消失に対する保護から、サーバー障害に対する保護にまで及びます。

WebSphere® Application Server SOAP over HTTP バインディングを使用する場合、 WS-ReliableMessaging に対して以下の3つのサービス品質を提供します。 この 3 つのサービス品質は、アプリケーションがアプリケーション・サーバーにデプロイされるときに、すべてサポートされます。 シン・クライアント・アプリケーションやクライアント・コンテナー・アプリケーションでは、最初のオプションのみを使用します。

非管理対象の非パーシスタント
Web サービス・アプリケーションを構成して、デフォルトのメモリー内のストアで WS-ReliableMessaging を使用できるようにすることが可能です。 このサービス品質は、最低限の構成で実現できます。 ただし、これは非トランザクションであり、ネットワークで失われたメッセージの再送信を可能にしていても、 サーバーが使用不可になるとメッセージが失われることになります。 このサービス品質は単一サーバー専用であり、クラスターでは機能しません。 [z/OS]このサービス品質は、 z/OS® プラットフォームではサポートされません。
管理対象の非パーシスタント
このメモリー内のサービス品質オプションでは、メッセージング・エンジンを使用してシーケンスの状態を管理し、 メモリーが少ない場合はメッセージがディスクに書き込まれます。 このサービス品質は、ネットワーク内で失われたメッセージの再送信を許可し、サーバー障害のリカバリーまで行うことができます。 ただし、メッセージング・エンジンの再始動後に状態が破棄されるため、この場合はメッセージが失われます。 このオプションは、クラスターおよび単一サーバーをサポートします。
管理対象のパーシスタント
このサービス品質は、非同期 Web サービス呼び出し用であり、リカバリー可能です。 このオプションは、メッセージング・エンジンとメッセージ・ストアを使用して、 シーケンスの状態の管理も行います。 メッセージは Web サービス要求元サーバーおよび Web サービス・プロバイダー・サーバーで保持され、 サーバーが使用不可になった場合はリカバリー可能です。 サーバーが使用不可のときに正しく送信されなかったメッセージを、 サーバーの再始動後に引き続き送信することができます。
注:
  • WS-ReliableMessaging を使用する際のサービスの質は、メッセージを管理するストアの耐久性の直接の結果です。
  • 整然とした配信といずれかの管理対象のサービスの品質を使用しているときは、サービスにエラーが発生すると、メッセージがサービスに再ディスパッチされます。
  • 他のベンダーが実装した WS-ReliableMessaging と相互作用する場合は、お客様に必要なサービス品質が、その実装によって提供されることを確認してください。

さまざまなサービスの品質の実装方法

Web サービス・アプリケーションが Web サービスを起動する 場合は、SOAP メッセージが WS-ReliableMessaging ストアに追加されます。 管理対象のサービスの品質の場合、送信側のアプリケーション・トランザクションは、メッセージをメッセージ・ストアに置くために使用されます。 トランザクションのコミット後、メッセージは送信されるようになります。 もう一方のサービスの品質のオプションは、トランザクションではないので、メッセージは直ちに送信できると見なされます。

WS-ReliableMessaging プロトコルは、メッセージが保管され、確認された場合に、そのメッセージを確実にターゲット・サーバーに送信するために使用されます。

そのメッセージは、ストアから読み取られ、受信アプリケーションにディスパッチされます。 管理対象パーシスタントのサービスの品質の場合、トランザクションはメッセージを読み、アプリケーションをディスパッチするために使用されます。

WS-ReliableMessaging トランザクションの使用に関する詳細については、 「 WS-ReliableMessaging によるトランザクション回復可能なメッセージングの提供」 を参照してください。

図1: Web サービス・メッセージを確実に交換するためのストアの使用。
サーバー 1 とサーバー 2 を表す 2 つのボックスが表示されます。 サーバー 1 は送信側アプリケーションをホストし、サーバー 2 は受信側アプリケーションをホストします。 SOAP over HTTP メッセージは、送信元アプリケーションとサーバー1上のローカルストア間、および受信アプリケーションとサーバー2上のローカルストア間でやり取りされています。 メッセージは、サーバー 1 のストアとサーバー 2 のストアの間で確実に交換されます。

管理対象のサービス品質 (管理対象パーシスタントおよび管理対象非パーシスタント) は、サービス統合バスでサポートされます。 アプリケーションとポリシー・セット間の関連付けごとに、高信頼性メッセージング・プロトコルの状態を確立するために使用する、バスおよびメッセージング・エンジンを選択できます。