アプリケーションのメッセージングのスタイル
アプリケーションは、point-to-point を使用し、メッセージをパブリッシュ/サブスクライブすることができます。これらのスタイルのメッセージングは、片方向、要求と応答、片方向と転送、という方法で使用することができます。
- Point-to-Point
- point-to-point アプリケーションは、通常 キュー を使用して、互いにメッセージを受け渡します。 アプリケーションは、宛先キューを暗黙的または明示的に識別することによって、別のアプリケーションにメッセージを送信します。基礎となるメッセージングおよびキューイング・システムは、送信側アプリケーションからメッセージを受信し、宛先キューにメッセージをルーティングします。次に、受信側アプリケーションは、キューからメッセージを取得できます。
- Publish/Subscribe
- パブリッシュ/サブスクライブ・メッセージングには、パブリッシャーとサブスクライバーの 2 つのタイプのアプリケーションがあります。
パブリッシャー は、情報をメッセージの形式で提供します。 パブリッシャーがメッセージをパブリッシュするとき、メッセージ内部の情報のサブジェクトを識別するトピック を指定します。
サブスクライバー は、パブリッシュされる情報のコンシューマーです。サブスクライバーは、サブスクリプション要求をパブリッシュ/サブスクライブ・ブローカーに送信することによって、関心があるトピックを指定します。ブローカーはパブリッシュされたメッセージをパブリッシャーから受信し、サブスクリプション要求をサブスクライバーから受信します。次に、パブリッシュされたメッセージをサブスクライバーにルーティングします。サブスクライバーは、サブスクライブしたトピックのみに関するメッセージを受信します。
- 片方向
- アプリケーションはメッセージを送信しますが、応答は要求しません。 このようなメッセージは、データグラム と呼ばれます。
- 一方向および転送
- アプリケーションは、別のアプリケーションに要求を送信し、 そのアプリケーションはさらに別のアプリケーションにメッセージを送信します。
- 要求および応答
- アプリケーションは、別のアプリケーションに要求を送信し、
その応答を受信することを期待します。
標準的な JMS メッセージング・パターンでは、メッセージング・サービス (例: メッセージ駆動型 Bean) による処理のために、要求側アプリケーションが JMS キューにメッセージを送信します。要求側アプリケーションが要求メッセージを送信する場合、メッセージでは、サービスが応答メッセージを送信する先の、別の JMS キューを指定します。 要求メッセージの送信後、要求側アプリケーションは、応答メッセージが到着するまで待機するか、後から再接続して応答メッセージを取得します。
これらのメッセージング手法を結合して、さまざまな非同期メッセージングのシナリオを作成することができます。
これらのメッセージング技法および Java™ Message Service (JMS) について詳しくは、Sun's Java Message Service (JMS) specification documentation (http://developer.java.sun.com/developer/technicalArticles/Networking/messaging/) を参照してください。
メッセージ駆動型 Bean およびインバウンド・メッセージング・サポートについて詳しくは、Sun's Enterprise JavaBeans specification (http://java.sun.com/products/ejb/docs.html) を参照してください。
JCA インバウンド・メッセージング処理について詳しくは、Sun's J2EE Connector Architecture specification (http://java.sun.com/j2ee/connector/download.html) を参照してください。