4.4. パブリッシュサブスクライブメッセージングのアドレスの設定

パブリッシュ/サブスクライブのシナリオでは、メッセージはアドレスにサブスクライブしているすべてのコンシューマーに送信されます。JMS トピックおよび MQTT サブスクリプションは、パブリッシュ/サブスクライブメッセージングの 2 つの例です。アドレスに関連付けられたキューがパブリッシュサブスクライブの方法でメッセージを受信するようにするには、ブローカー設定で指定の address 要素に マルチキャストルーティング タイプを定義します。

マルチキャスト ルーティング タイプのアドレスでメッセージを受信すると、ブローカーはメッセージのコピーをアドレスに関連付けられた各キューにルーティングします。コピーのオーバーヘッドを減らすために、各キューにはメッセージへの参照のみが送信され、完全なコピーは送信されません。

以下の図は、パブリッシュ/サブスクライブメッセージングの例を示しています。

以下の手順は、パブリッシュサブスクライブメッセージングのアドレスを設定する方法を示しています。

手順

  1. <broker_instance_dir>/etc/broker.xml 設定ファイルを開きます。
  2. 空の multicast 設定要素をアドレスに追加します。

    <configuration ...>
      <core ...>
        ...
        <address name="my.multicast.destination">
          <multicast/>
        </address>
      </core>
    </configuration>
  3. (オプション)1 つ以上の queue 要素をアドレスに追加し、その中の multicast 要素をラップします。ブローカーはクライアントがリクエストする各サブスクリプションのキューを自動的に作成するため、この手順は必要ありません。

    <configuration ...>
      <core ...>
        ...
        <address name="my.multicast.destination">
          <multicast>
            <queue name="client123.my.multicast.destination"/>
            <queue name="client456.my.multicast.destination"/>
          </multicast>
        </address>
      </core>
    </configuration>