3.5.5. STOMP 宛先の AMQ Broker アドレスおよびキューへのマッピング
メッセージを送信してサブスクライブする場合、STOMP クライアントには通常、destination
ヘッダーが含まれます。宛先名は文字列の値で、ブローカーの宛先にマッピングされます。AMQ Broker では、これらの宛先は アドレス および キュー にマッピングされます。宛先フレームの詳細は、STOMP 仕様を参照してください。
たとえば、以下のメッセージ (ヘッダーおよびボディー) を送信する STOMP クライアントの例を考えます。
SEND destination:/my/stomp/queue hello queue a ^@
この場合、ブローカーは /my/stomp/queue
アドレスに関連付けられたキューへメッセージを転送します。
たとえば、STOMP クライアントが (SEND
フレームを使用して) メッセージを送信する場合、指定された宛先がアドレスにマッピングされます。
これは、クライアントが SUBSCRIBE
または UNSUBSCRIBE
フレームを送信する場合 と同じように機能しますが、この場合は AMQ Broker は destination
をキューにマッピングします。
SUBSCRIBE destination: /other/stomp/queue ack: client ^@
上記の例では、ブローカーは destination
を キュー /other/stomp/queue
にマップします。
STOMP 宛先と JMS 宛先のマッピング
JMS 宛先は、ブローカーアドレスおよびキューにマッピングされます。STOMP を使用してメッセージを JMS 宛先に送信する場合、STOMP 宛先は同じ規則に従う必要があります。
JMS Queue を送受信するには、
jms.queue.
でキュー名を追加します。たとえば、JMS キューのorders
にメッセージを送信するには、STOMP クライアントはフレームを送信する必要があります。SEND destination:jms.queue.orders hello queue orders ^@
jms.topic.
でトピック名を追加し、JMS Topic を送信またはサブスクライブします。たとえば、stocks
JMS Topic をサブスクライブするには、STOMP クライアントは以下のようなフレームを送信する必要があります。SUBSCRIBE destination:jms.topic.stocks ^@