5.2. Message Channel

概述

消息频道 是消息传递系统中的逻辑频道。也就是说,发送消息到不同的消息通道提供了一种组合方式,可将消息排序为不同的消息类型。消息队列和消息主题是消息频道的示例。您应该记住逻辑频道与物理频道不同。物理化逻辑通道可以有几种不同方法。

在 Apache Camel 中,消息频道由面向消息的组件的端点 URI 表示,如 图 5.2 “消息频道模式” 所示。

图 5.2. 消息频道模式

消息频道模式

面向消息的组件

Apache Camel 中的以下面向消息的组件支持消息频道的概念:

ActiveMQ

在 ActiveMQ 中,消息通道由 队列或主题 表示。特定队列的 QueueName 的端点 URI 具有以下格式:

activemq:QueueName

特定主题 TopicName 的端点 URI 具有以下格式:

activemq:topic:TopicName

例如,要将消息发送到队列 Foo.Bar,请使用以下端点 URI:

activemq:Foo.Bar

如需更多详细信息和有关设置 ActiveMQ 组件的说明,请参阅 Apache Camel 组件参考指南 中的 ActiveMQ。

JMS

Java 消息传递服务(JMS)是一个通用打包程序层,用于访问许多不同类型的消息系统(例如,您可以使用它来嵌套 ActiveMQ、NU MQ 系列、Tibco、BEA、Snic 等)。在 JMS 中,消息通道由队列或主题表示。特定队列的 QueueName 的端点 URI 具有以下格式:

jms:QueueName

特定主题 TopicName 的端点 URI 具有以下格式:

jms:topic:TopicName

如需了解更多详细信息和有关设置 JMS 组件的说明,请参阅 Apache Camel 组件参考指南 中的 Jms

AMQP

在 AMQP 中,消息频道由队列或主题表示。特定队列的 QueueName 的端点 URI 具有以下格式:

amqp:QueueName

特定主题 TopicName 的端点 URI 具有以下格式:

amqp:topic:TopicName

有关设置 AMQP 组件的更多详细信息,请参阅 Apache Camel 组件参考指南 中的 Amqp