JMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的分布式系统中发送消息,进行异步通信。Java消息服务是一个与具体平台无关的API.

AMQP,即Advanced Message Queuing Protocol,一个提供统一消息服务的应用层标准高级中间件不同产品,不同的开发语言等条件的限制

 

1 通信平台的区别

JMS:  只允许基于JAVA实现的消息平台的之间进行通信
AMQP: 允许多种消息协议进行通信,比如ruby的storm和java的jms都可以在AMQP上进行通信。
结论: AMQP允许多种技术同时进行协议通信


2 通信机制的区别
JMS:消息生产者和消息消费者必须知道对方的Queue
AMQP: 消息生产者和消息消费者无须知道对方的Queue,消息生产者将Exchange通过Route key和任意Queue绑定。消息消费者通过Route key从任意Queue中获取Exchange.


3 消息传输机制的区别
JMS:JMS支持PTP和publis/subscribe机制,PTP只可以点对点通信,public/subscribe在一端发出请求后所有其他端收到消息
AMQP:1 所有RouteKey相同的Queue接受到数据
             2 所有相同的Exchange的Queue接受到数据
             3 所有wilecard的Exchange的Queue接受到数据
             4 可以让webservice等接受到数据

相关文章:

  • 2022-03-08
猜你喜欢
  • 2021-10-23
  • 2022-12-23
  • 2021-12-02
  • 2022-12-23
  • 2021-05-09
  • 2021-04-26
相关资源
相似解决方案