JMS--Java Message Service

JMS是J2EE提供的消息通讯机制。

PTP(Point-to-Point)模型是基于队列(Queue)的,对于PTP消息模型而言,它的消息目的是一个消息队列(Queue),消息生产者每次发送消息总是把消息送入消息队列中,消息消费者总是从消息队列中读取消息.先进队列的消息将先被消息消费者读取.

JMS Pub/Sub 模型定义了如何向一个内容节点发布和订阅消息,这些节点被称作主题(topic).
主题可以被认为是消息的传输中介,发布者(publisher)发布消息到主题,订阅者(subscribe) 从主题订阅消息.主题使得消息订阅者和消息发布者保持互相独立,不需要接触即可保证消息的传送.

在Pub/Sub模型中,当一个主题发布出来,有多个监听者,其中一个监听者的onMessage方法sleep或者很长,其他监听者能监听到吗?能。那么,此时如果又发布一个主题,第一个监听者会漏掉消息吗?不会。

目前还不知道JMS消息机制具体原理是怎样的?应该来看是比较稳定的,每个监听器应该是一个线程?互不干扰,并且猜想JMS消息可能会放到一个容器里,当所有监听器都确认收到了再删除?

以后若知道了再补充

你可能感兴趣的:(jms)