4.6. 在接受或配置中添加路由类型
通常,如果某个地址同时使用任何广播和多播收到消息,则任何广播队列之一接收该消息和所有 多播 队列。 但是,在连接到 地址时,客户端可以指定特殊前缀,以指定是否使用任何广播或 多播 进行连接。前缀是自定义值,使用代理配置中的 acceptor 的 URL 中任何cast Prefix 和 multicastPrefix 参数指定。
以下流程演示了如何为给定的接收器配置前缀。
步骤
-
打开
<broker-instance-dir>/etc/broker.xml配置文件。 对于给定的接收器,要配置任何广播前缀,请将任何cast
Prefix添加到配置的 URL 中。设置自定义值。例如:<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://进行任何广播前缀。客户端代码可以指定任何cast://<my.destination>/,如果客户端只需要向任何广播队列之一发送消息。对于给定的接受者,要配置
多播前缀,请在配置的 URL 中添加多播前缀。设置自定义值。例如:<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://<my.destination>/,如果客户端只需要发送到多播队列。