5.2. Message Channel
概述
频道 是消息传递系统中的逻辑频道。也就是说,将消息发送到不同的消息通道提供了将消息排序到不同消息类型的元素方法。消息队列和消息主题是消息频道的示例。您应该记住,逻辑频道与物理频道不同。物理实现了逻辑通道的几种不同方法。
在 Apache Camel 中,消息频道由面向消息组件的端点 URI 代表,如 图 5.2 “Message Channel Pattern” 所示。
图 5.2. Message Channel Pattern
面向消息的组件
Apache Camel 中的以下面向消息的组件支持消息频道的注意:
ActiveMQ
在 ActiveMQ 中,消息通道由 队列或主题 表示。特定队列 QueueName 的端点 URI,其格式如下:
activemq:QueueName
特定主题的端点 URI TopicName 的格式如下:
activemq:topic:TopicName
例如,要将消息发送到队列 Foo.Bar
,请使用以下端点 URI:
activemq:Foo.Bar
如需有关设置 ActiveMQ 组件的更多详细信息和说明,请参阅 Apache Camel 组件参考指南 中的 ActiveMQ。
JMS
Java 消息传递服务(JMS)是一个通用打包程序层,用于访问许多不同类型的消息系统(例如,您可以使用它来嵌套 ActiveMQ、MQSeries、Tibco、BEA、Sunic 等)。在 JMS 中,消息通道由队列或主题表示。特定队列 QueueName 的端点 URI,其格式如下:
jms:QueueName
特定主题的端点 URI TopicName 的格式如下:
jms:topic:TopicName
有关设置 JMS 组件的详情和说明,请参阅 Apache Camel 组件参考指南 中的 Jms。
AMQP
在 AMQP 中,消息通道由队列或主题表示。特定队列 QueueName 的端点 URI,其格式如下:
amqp:QueueName
特定主题的端点 URI TopicName 的格式如下:
amqp:topic:TopicName
有关设置 AMQP 组件的详情和说明,请参阅 Apache Camel 组件参考指南 中的 Amqp。