ActiveMQ使用的不同消息传递协议的互操作性

时间:2016-10-27 14:57:38

标签: activemq message-queue language-interoperability

阿帕奇的ActiveMQ支持各种不同的protocols,因此很容易找到cross-language-client

从阅读文档中我得到的印象是ActiveMQ能够翻译协议,尽管没有明确说明。例如,使用AMQP协议的Java客户端可能会对使用STOMP的PHP客户端获取的消息进行排队。

我的问题是:我说错了吗?如果是,我想知道ActiveMQ如何处理协议支持的不同功能。例如,AMQP非常清楚地说明了如何在STOMP没有排队时将消息排队。

1 个答案:

答案 0 :(得分:1)

是的,ActiveMQ尽力支持客户之间的互操作性和透明度。

值得注意的是,内部所有消息都根据JMS API规范映射到通用格式。

因此,您可以查看每个协议文档页面,了解各种协议如何映射到JMS。特别是元数据和有效载荷格式。

对于AMQP,您可以决定是否要通过类似JMS的格式启用映射,或者只是传递消息" as-is"。但是没有任何转换是完美的,所以你能做的最好的事情就是试试你的情况并看看它是否足够好。

http://activemq.apache.org/stomp.html

http://activemq.apache.org/amqp.html

http://activemq.apache.org/mqtt.html