2.2. Apache ActiveMQ Artemis Core API 和 JMS Destinations
让我们快速讨论 JMS 目的地如何映射到 Apache ActiveMQ Artemis 地址。
Apache ActiveMQ Artemis 核心是 JMS-agnostic.它没有任何 JMS 主题的概念。JMS 主题在 core 中作为绑定有零个或多个队列的地址(主题名称)实施。绑定到该地址的每个队列都代表一个主题订阅。类似地,JMS 队列作为地址(JMS 队列名称)实施,其绑定了一个队列,它代表 JMS 队列。
按照惯例,所有 JMS 队列映射到核心队列,其中核心队列名称具有 string
jms.queue.
前缀为它。例如,名称为 Order
.europe
的 JMS 队列将使用 name
jms.queue.orders.europe
映射到核心队列。绑定核心队列的地址也由核心队列名称提供。
对于 JMS 主题,通过将 string
jms.topic.
添加到 JMS 主题的名称来为代表订阅的队列绑定的地址。例如,名称为
news.europe
的 JMS 主题将映射到核心 address
jms.topic.news.europe
。
换句话说,如果您发送 JMS 消息到带有名称 Order
.europe
的 JMS 队列,它会在服务器上路由到绑定到 address
jms.queue.orders.europe
的任何核心队列。如果您发送 JMS 消息到名称为
news.europe
的 JMS 主题,它会在服务器上路由到绑定到 address
jms.topic.news.europe
的任何核心队列。
如果要使用名称 Order
.europe
配置 JMS 队列的设置,您需要配置对应的内核 queue
jms.queue.orders.europe
: