Java Message System は 2 つのメッセージングモデルを提供します。ポイントツーポイントのキューイングモデルと、パブリッシュ/サブスクライブのトピックモデルです。Identity Manager は両方のモデルをサポートします。
ポイントツーポイントモデルでは、「プロデューサ」が特定のキューにメッセージを送信し、「コンシューマ」がキューからメッセージを読み取ります。この場合、プロデューサはメッセージの宛先を知っており、メッセージをコンシューマのキューに直接送信します。
ポイントツーポイントモデルの特性は次のとおりです。
1 つのコンシューマのみがメッセージを取得する。
プロデューサは受信側がメッセージを読み取るときに稼動している必要はなく、受信側もメッセージの送信時に稼動している必要はない。
正常に処理されたすべてのメッセージの確認応答が受信側で行われる。
これに対し、パブリッシュ/サブスクライブモデルでは、特定のメッセージ「トピック」へのメッセージのパブリッシュをサポートします。0 個以上のサブスクライバが、特定のメッセージトピックのメッセージを受信対象とするための登録を行えます。このモデルでは、パブリッシャーもサブスクライバも互いを認識しません。このモデルの例として、匿名の掲示板があります。
パブリッシュ/サブスクライブモデルの特性は次のとおりです。
複数のコンシューマがメッセージを受信できる。
パブリッシャーとサブスクライバの間に時間的な依存関係が存在する。クライアントがサブスクライブする前に、パブリッシャーでサブスクリプションを作成する必要があります。一度サブスクライブすると、永続サブスクリプションが確立されないかぎり、サブスクライバはメッセージを受信するためにアクティブであり続けます。永続サブスクリプションの場合は、サブスクライバが未接続の間にパブリッシュされたメッセージが、サブスクライバの再接続時に再配信されます。
JMS の詳細については、http://www.sun.com/software/products/message_queue/index.xml を参照してください。