一、简介
Java Message Service 是一种允许应用程序创建、发送、接受和读取消息的Java API 。
二、JMS 特点
大致总结了一下JMS有以下几个特点
- 异步通信
- 低耦合
- 高可用
这几个特点之间也是相辅相成的,异步就能够一定程度上决定了低耦合。异步的操作方式,就能够极大的去缓冲同步操作带来的阻塞问题。
三、JMS 模型
1.Point-to-Point 点对点模型
在点对点消息模型中,由消息队列,发送者,接收者组成。每一个消息发送给一个固定的消息队列(queue),该队列保存了所有发送给它的消息,并自动处理已经被接收的消息以及过期的消息。
点对点的模型最重要的是每个消息只有一个客户端接收。
2.Publish-and-Subscribe 发布订阅模型
发布订阅模型中,区别于点对点模型最重要的一点就是一个消息可以通过topic来广播给订阅这个topic 的所有客户端。
组成:
- 发布者
- 主题
- 订阅
- 接收者
四、MQ和JMS
在上面主要是介绍了JMS了大致内容,简单明了,最后咱们可以概括一下:JMS是 java 用来处理消息的一个API规范。市面上绝大数 MOM(Message-Oriented Middleware 消息中间件)都支持.
MQ是消费-生产者模型的一个典型的代表,一端往消息队列中不断写入消息,而另一端则可以读取或者订阅队列中的消息。MQ和JMS类似,但不同的是JMS是SUN JAVA消息中间件服务的一个标准和API定义,而MQ则是遵循了AMQP协议的具体实现和产品。
资料:
各大消息中间件选型对比:http://blog.csdn.net/lltaoyy/article/details/52836666