4.3.2. 为多个队列配置点对点消息传递
您可以在使用 任播
路由类型的地址上定义多个队列。代理在所有关联的队列中平均分发发送到 任播
地址的消息。通过指定 完全限定队列名称 (FQQN),您可以将客户端连接到特定队列。如果多个消费者连接到同一队列,代理会在消费者之间均匀分发消息。
下图显示了使用两个队列的点对点消息传递示例:
以下步骤演示了如何为具有多个队列的地址配置点对点消息传递。
流程
-
打开
<broker_instance_dir>/etc/broker.xml
配置文件。 将
anycast
配置元素周围的 address 元素包装到address
元素中。例如:
<configuration ...> <core ...> ... <address name="my.anycast.destination"> <anycast> <queue name="q1"/> <queue name="q2"/> </anycast> </address> </core> </configuration>
如果您的配置(如 所示)在集群中的多个代理之间镜像,集群可以以对生产者和消费者不透明的方式对点对点消息传递进行负载平衡。确切的行为取决于如何为集群配置消息负载平衡策略。
其它资源
有关以下的更多信息:
- 指定完全限定队列名称,请参阅 第 4.9 节 “指定完全限定队列名称”。
- 如何为代理集群配置消息负载均衡,请参阅 第 14.1.1 节 “代理集群均衡消息负载”。