WS-Notification: 概要
WS-Notification によって、Web サービスでのパブリッシュおよびサブスクライブのメッセージング・パターンの使用が可能になります。
WebSphere® Application Server バージョン 8.5.5 で、WS-Notification は安定化されたフィーチャーになりました。
パブリッシュおよびサブスクライブのメッセージングは、単一のメッセージを複数のサブスクライバーにパブリッシュする場合に使用します。このパターンでは、 アプリケーションは、メッセージのサブジェクト・エリアを示すトピックでマークされたメッセージ (イベント通知) を メッセージング・システムへ挿入 (パブリッシュ) します。問題のトピックにサブスクライブしており適切な権限を持っているアプリケーションを消費し、 すべてが製作アプリケーションによってパブリッシュされたメッセージの個々のコピーを受信します。 いずれのコンシューマー・アプリケーションも、 メッセージ本文の XML メッセージの内容と比較して評価されるメッセージの内容フィルターを使用することで、 所定のトピックについてのメッセージをより細かくフィルタリングできます。
WebSphere Application Server での WS-Notification の実装は 、WS-Notification 規格を サポートするほか、WS-I Basic Profile 1.0 要件に準拠しており、高可用性およびワークロードの管理用の WS-Addressing や、コンポーネント間の信頼性通信のための WS-ReliableMessaging などといった、その他の関連規格から構成されています。 これにより、アプリケーション・レベルでは、これが特定のイベント通知の listen、または他のアプリケーションやシステム管理ツールの消費のためのシステムへのイベント通知の挿入であるかどうかにかかわらず、パブリッシュおよびサブスクライブのメッセージング・パターンにおいて Web サービス・アプリケーションの標準化アプローチが可能になります。 この Web サービスの仕様はオープン・スタンダードであるため、基礎となるハードウェア・プラットフォーム、ソフトウェア言語、ベンダーの環境などに関係なく、アプリケーション間での相互通信が可能になります。
WS-Notification 標準
WebSphere Application Server は、Organization for the Advancement of Structured Information Standards (OASIS) の管理下で開発される WS-Notification バージョン 1.3 ファミリー標準を実装します。これらの標準は、Web サービス・アプリケーションがパブリッシュおよびサブスクライブ・メッセージング・パターンを使用できるように、Web サービス・メッセージ交換を定義します。
- 基本のプロデューサーおよびコンシューマー・アプリケーション・ロール、 およびセレクター式を使用したメッセージの内容のフィルタリングを定義する WS-BaseNotification Version 1.3 OASIS Standard。
- ブローカー・ロールを定義するために基本通知を拡張する WS-BrokeredNotification Version 1.3 OASIS Standard。
- 基本通知またはブローカー経由による通知のいずれかの実装者によって使用できるトピック構文を定義する WS-Topics Version 1.3 OASIS Standard。
- WS-ReliableMessaging を使用して、Web サービス・エンドポイントは、HTTP などの本質的に信頼できないトランスポートでも信頼性が高い方法で Web サービスの処理が呼び出されるように構成することができます。WS-Notification 標準では、アプリケーションによるメッセージのパブリッシュおよび受信の信頼性を保証していません。そのため、信頼性を得るためには、WS-ReliableMessaging を使用して WS-Notification を構成する必要があります。
- WS-Distributed Management (WS-DM) は、WS-Notification NotificationProducers である専門化されたアプリケーションおよび、Web サービス・クライアントによってリソース (プリンターなど) を管理するために、これらのアプリケーションがイベント通知を発信するトピックを記述するトピック名前空間文書を定義します。
WS-Notification 用語も参照してください。
WebSphere Application Server での WS-Notification 実装
この実装のキー・コンポーネントは、通知ブローカーです。これは、 イベント通知をシステムに挿入する作成アプリケーション、およびイベント通知を受信するコンシューム・アプリケーション間の分離点です。WebSphere Application Server は、 このブローカーを使用できるように準備します。そのため、アプリケーションは、 WS-Notification 仕様のより複雑な側面のインフラストラクチャー (アクティブ・サブスクライバーのリストの保持、トピックとワイルドカードの解析と突き合わせ、 イベント通知のサブスクライバーへの配布、サブスクリプション・ライフサイクルの処理など) を実装することなく、イベント送受信のビジネス・レベルの機能要件に集中できます。 このように、作成を行うビジネス・アプリケーションと消費を行うビジネス・アプリケーションが分離されていることは、プロデューサー・アプリケーションとコンシューマー・アプリケーションが通信するために同時に使用可能になる必要がないことを意味します。ブローカーは、コンシューマーが使用可能になるまで公開を保持します。
- Web サービス・アプリケーションは、WS-Notification サービス・ポイントによって公開された Web サービス・エンドポイントを使用して、サーバーに連絡します。
- エンドポイントは、要求情報を解析し、受信した要求のタイプに応じて該当するアクションを取る通知ブローカーに、この呼び出し要求を渡します。
以下の図は、通知ブローカーおよびメッセージング・エンジンが含まれるアプリケーション・サーバーを示しています。メッセージング・エンジン内には、永続サブスクリプションおよびバス・トピック・スペースがあります。アプリケーション・サーバーと外部世界の間には、Web サービス・エンドポイントがあります。外部世界には、パブリッシャー、サブスクライバー、および通知コンシューマーがあります。パブリッシャーは、特定のトピックの通知メッセージを送信し、サブスクライバーは、通知コンシューマーの代わりにサブスクライブ要求を送信して、同じトピックにサブスクライブします。 これらの両方のメッセージは、Web サービス・エンドポイントによって受信され、関連したブローカーおよびトピック・スペースに経路指定されます。サブスクリプションの詳細は、永続サブスクリプションとしてファイルされます。受信された通知メッセージは、ブローカーによって、トピックにサブスクライブした通知コンシューマーに転送されます。

- バージョン 7.0: ポリシー・セットによる Web サービスのサービスの品質 (QoS) で JAX-WS WS-Notification サービスを構成する場合、または JAX-WS ハンドラーを WS-Notification サービスに適用する場合は、このサービス・タイプを使用します。 これは、新規のデプロイメントに推奨されているサービスのタイプです。この WS-Notification オプションは、バージョン 7.0 から WebSphere Application Server で使用できるようになりました。
- バージョン 6.1: JAX-RPC ハンドラーをサービスに適用する機能を含め、WebSphere Application Server バージョン 6.1 で提供される同じテクノロジーを使用する JAX-RPC WS-Notification サービスを公開する場合は、このタイプのサービスを使用します。この WS-Notification オプションは、バージョン 6.1 から WebSphere Application Server で使用できるようになりました。
- 通知ブローカー
- サブスクリプション・マネージャー
- パブリッシャー登録マネージャー
- 通知ブローカー
- サブスクリプション・マネージャー
- パブリッシャー登録マネージャー