JMS与AMQP比较

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hxg117/article/details/82628072

1.平台

JMS只针对Java编程语言。AMQP多技术平台。

2. 消息模型。

JMS支持两种消息模型,点对点,发布订阅模型。
AMQP支持多种交换类型,direct,topic,fanout,headers。消息路由算法依赖于exchange的类型。

3. 消息数据类型

JMS支持 StreamMessage,MapMessage,TextMessage,ObjectMessage和BytesMessage
AMQP仅支持一种类型的消息,二进制消息。

4. 消息结构

JMS消息包括三部分,headers,properties和body
AMQP消息包括四部分,header,properties,body和footers

5. 消息路由

AMQP使用routing key,实现复杂的路由机制,
JMS使用客户端的选择过滤器实现路由

AMQP,有一个概念 Binding,用来连接queue到exchange。Broker会比较消息的routing key和queue的binding key,如果匹配则转发该消息到queue。

6. 工作流程

AMQP,生产者需要发送消息到exchange,然后消息被转发到queue。Publisher->exchange->queue->consumer
JMS,消息直接被发送给Queue或者Topic

猜你喜欢

转载自blog.csdn.net/hxg117/article/details/82628072