JMS简单描述:
JMS即Java消息服务(Java Message Service),是一个Java平台中面向消息中间件的API,用于在两个应用程序之间或分布式系统中发送、接受消息,从而进行异步通信。JMS是一个与厂商无关的API,绝大多数消息中间件供应商都对JMS提供支持。
JMS的优势:
异步:JMS天生就是异步的,客户端获取消息的时候,不需要主动发送请求,消息会自动发送给可用的客户端。
可靠:JMS保证消息只会传递一次。
JMS消息传递模型有2种:
1.点对点消息传递模型(P2P):
在点对点消息传递模型中,应用程序由消息队列、发送者、接收者组成。每一个消息发送给一个指定的消息队列,该队列保存了所有发送给它的消息(被接收者消费掉和已过期的消息除外)。点对点消息传递模型特性如下:
每个消息只有一个接收者;
消息发送者和接收者并没有时间依赖性;
当接收者收到消息时,会发送确认收到通知(acknowledgement)
2.发布/订阅消息传递模型(pub/sub):
在发布/订阅消息传递模型中,发布者发布一个消息,该消息通过topic传递给所有订阅者客户端。发布/订阅消息模型特性如下:
一个消息可以传递给多个客户端;
发布者和订阅者有时间依赖性,只有当客户端创建订阅后才能接收消息。为了缓和这种严格的时间依赖性,JMS允许客户端创建一个可持久化的订阅(durableSubscriber),这样,客户端创建订阅后还能接收到创建订阅前发布者已经发布的消息。
原文:http://www.cnblogs.com/koushr/p/5954675.html