4.6. アクセプター設定へのルーティングタイプの追加
通常、anycast
と multicast
の両方を使用しているアドレスでメッセージを受信した場合、anycast
のいずれかのキューがメッセージを受信し、multicast
のすべてのキューが受信します。ただし、クライアントは、アドレスに接続する際に特別な接頭辞を指定して、anycast
と multicast
キャストのどちらで接続するかを指定することができます。接頭辞は、ブローカー設定のアクセプターの URL 内の anycastPrefix
および multicastPrefix
パラメーターを使用して指定されるカスタム値です。
以下の手順は、特定のアクセプターに接頭辞を設定する方法を示しています。
手順
-
<broker_instance_dir>/etc/broker.xml
設定ファイルを開きます。 特定のアクセプターでは、
anycast
接頭辞を設定するには、設定済みの URL にanycastPrefix
を追加します。カスタム値を設定します。以下に例を示します。<configuration ...> <core ...> ... <acceptors> <!-- Acceptor for every supported protocol --> <acceptor name="artemis">tcp://0.0.0.0:61616?protocols=AMQP;anycastPrefix=anycast://</acceptor> </acceptors> ... </core> </configuration>
前述の設定により、アクセプタは
anycast
の接頭辞にanycast://
を使用するように設定されています。クライアントコードは、クライアントがanycast
キューの 1 つだけにメッセージを送信する必要がある場合は、anycast://<my.destination>/
を指定できます。特定のアクセプターでは、
multicast
接頭辞を設定するには、設定された URL にmulticastPrefix
を追加します。カスタム値を設定します。以下に例を示します。<configuration ...> <core ...> ... <acceptors> <!-- Acceptor for every supported protocol --> <acceptor name="artemis">tcp://0.0.0.0:61616?protocols=AMQP;multicastPrefix=multicast://</acceptor> </acceptors> ... </core> </configuration>
前述の設定に基づいて、アクセプターは
multicast
接頭辞にmulticast://
を使用するよう設定されます。クライアントがメッセージをmulticast
キューにのみ送信する必要がある場合、クライアントコードではmulticast://<my.destination>/
を指定できます。