ActiveMQ:消费者/生产者为同一队列实现不同的协议?


0

我正在进入消息队列最近(与ActiveMQ)和试验。

到目前为止,我已经能够建立一个生产者与2个用Java编写的消费者在Tcp上实现JMS。生产者发送两种类型的消息到ActiveMQ中的队列中,而在另一端,来自不同机器的两个消费者根据消息属性选择消息。

我的问题是:

  • 是否生产者/消费者需要实现相同的协议,或
    才有可能有一个生产者将消息发送到队列,JMS和 有一个客户端(如节点js)使用另一种协议(如AMQP)并收集来自同一队列的消息?

谢谢你的建议,

2

也许回答你的问题是记录在甲骨文的JMS as a MOM Standard

要注意,JMS是很重要的是API标准,而不是协议标准。因为所有JMS客户端都实现相同的接口,所以很容易将一个供应商的clinet移植到另一个供应商的JMS提供实现。 但是不同的JMS厂商通常不能直接相互沟通

  0

感谢您的澄清。得到它了。 22 1月. 142014-01-22 11:31:10


1

的ActiveMQ使用它自己的协议实现标准JMS客户端库(OpenWire)但是它也支持其他几种协议允许客户从其他客户端连接等的MQTT客户机,STOMP客户端或一个AMQP客户端和从一个消费/农产品队列。

要了解如何使用AMQP,请参阅ActiveMQ docs,为获得最佳效果,请使用最新版本的ActiveMQ。