第 5 章 消息地址和队列
AMQ 7 引入了一种新的灵活寻址模型,使您可以定义适用于任何消息传递协议的标准消息传递模式。因此,配置队列和类似主题的行为的过程发生了显著的变化。
5.1. 处理更改
AMQ 6 将 JMS 概念实施为可直接配置的目标,如队列、主题和持久订阅。
示例:AMQ 6 中的默认队列和主题配置
<destinations>
<queue physicalName="my-queue" />
<topic physicalName="my-topic" />
</destinations>
AMQ Broker 7 使用地址、路由类型和队列来实现队列和类似主题的行为。地址 代表消息传递端点。队列与地址相关联.路由类型 定义消息如何分发到与地址关联的队列。路由类型有两种:任意 广播 将消息分发到匹配地址内的单个队列,而 多播将 消息分发到与该地址关联的每个队列。
通过将队列与地址和路由类型关联,您可以实施各种消息传递模式,如点对点(队列)和发布订阅(类似主题)。
示例:AMQ Broker 7 中的点对点地址配置
在本例中,当代理在 address.foo 上收到信息时,消息将路由到 my-queue。如果有多个任播队列与该地址相关联,则消息在队列间均匀分布。
<address name="address.foo">
<anycast>
<queue name="my-queue"/>
</anycast>
</address>示例:在 AMQ Broker 7 中发布订阅地址配置
在这个示例中,当代理在 topic.foo 上收到消息时,信息的副本将会被路由到 my-topic-1 和 my-topic-2。
<address name="topic.foo">
<multicast>
<queue name="my-topic-1"/>
<queue name="my-topic-2"/>
</multicast>
</address>相关信息
- 有关 AMQ Broker 7 中的寻址模型的详情,请参考 配置 AMQ Broker 中的地址和队列。