当前位置 : 主页 > 大数据 > 区块链 >

jms – Open MQ使用哪种传输协议?

来源:互联网 收集:自由互联 发布时间:2021-06-22
我听说IBM的一个人谈了 MQTT,他说MQTT是目前最轻量级的消息传递协议.他的论点是,单个消息产生的最小开销是2个字节.但是,我听说HTML5 WebSockets也一样(2字节开销)?无论如何,因为我计划将
我听说IBM的一个人谈了 MQTT,他说MQTT是目前最轻量级的消息传递协议.他的论点是,单个消息产生的最小开销是2个字节.但是,我听说HTML5 WebSockets也一样(2字节开销)?无论如何,因为我计划将 Open MQ用作消息传递应用程序的JMS提供程序,我的提供程序使用的协议对我很感兴趣.我无法在任何地方找到该问题的答案,我甚至用Google搜索Open MQ文档和使用Open MQ作为JMS提供程序的GlassFish文档.互联网上的一些博客帖子等说 AMQP,但我找不到一个可靠的参考来支持这个说法.

Open MQ使用哪种协议,您如何知道?

我认为你混合了一些东西:MQTT是一个应用程序级协议,使用TCP作为传输协议. MQTT也可以与Websockets一起用作传输.如果愿意,MQTT是JMS和AMQP的轻量级替代品.

AMQP是JMS的流行且可靠的替代方案,非常适合业务和关键任务消息传递.它功能丰富且使用广泛.请注意,AMQP是一种消息传递协议,而JMS是一种API(甚至可以使用AMQP作为传输).您可以在Java应用程序中直接使用AMQP和库,例如RabbitMQ Java Client.

另一方面,MQTT非常适合遥测数据和场景,在这些场景中,您有许多客户端与单个消息代理进行通信,并且客户端的低带宽使用率,内存效率和电池寿命是关键.

JMS没有定义任何传输协议(与MQTT相反),这里可以使用任何东西.我个人认为TCP也适合这里.

我不知道OpenMQ,但对于JMS和AMQP,我可以推荐ActiveMQ.对于MQTT,有一些经纪人,包括HiveMQ和Mosquitto.

强制性免责声明:我是HiveMQ的开发者,所以我可能有点偏颇;-)

网友评论