中国建设银行网站客户注册码,河南省住房建设厅网站,网页美工案例教程,衡阳市做淘宝网站建设转自#xff1a;https://blog.csdn.net/jiuqiyuliang/article/details/46701559 1.基本概念 JMS是java的消息服务#xff0c;JMS的客户端之间可以通过JMS服务进行异步的消息传输。 2.消息模型 P2P Pub/Sub 3.P2P 模式#xff1a; 消息队列#xff08;Queue#xff09;发送…转自https://blog.csdn.net/jiuqiyuliang/article/details/46701559 1.基本概念 JMS是java的消息服务JMS的客户端之间可以通过JMS服务进行异步的消息传输。 2.消息模型 P2P Pub/Sub 3.P2P 模式 消息队列Queue发送者(Sender)接收者(Receiver)每个消息都被发送到一个特定的队列接收者从队列中获取消息。队列保留着消息直到他们被消费或超时。 特点 每个消息只有一个消费者Consumer(即一旦被消费消息就不再在消息队列中)发送者和接收者之间在时间上没有依赖性也就是说当发送者发送了消息之后不管接收者有没有正在运行它不会影响到消息被发送到队列接收者在成功接收消息之后需向队列应答成功4.Pub/Sub 模式图 主题Topic发布者Publisher订阅者Subscriber 客户端将消息发送到主题。多个发布者将消息发送到Topic,系统将这些消息传递给多个订阅者。 特点 每个消息可以有多个消费者发布者和订阅者之间有时间上的依赖性。针对某个主题Topic的订阅者它必须创建一个订阅者之后才能消费发布者的消息而且为了消费消息订阅者必须保持运行的状态。为了缓和这样严格的时间相关性JMS允许订阅者创建一个可持久化的订阅。这样即使订阅者没有被激活运行它也能接收到发布者的消息。5.JMS编程模型 1.ConnectionFactory创建connection的工厂针对两种不同的消息模型有QueueConnectionFactory和TopicConnectionFactory 2.Destination对于生产者来说它的destination是某个queue或topic对于消费者来说它的destination也是 3.Connection表示在客户端和JMS系统之间建立的连接对TCP/IP socket的包装connection可以产生多个sessionconnection有QueueConnection和TopicConnection两种 4.session操作消息的接口可通过session创建生产者/消费者/消息等session 提供了事物的功能当我们要使用session发送/接收多个消息时可将这些动作放到一个事物中有QueueSession和TopicQueue两种 5.消息的生产者消息生产者由Session创建并用于将消息发送到Destination。同样消息生产者分两种类型QueueSender和TopicPublisher。可以调用消息生产者的方法send或publish方法发送消息。 6.消息的消费者消息消费者由Session创建用于接收被发送到Destination的消息。两种类型QueueReceiver和TopicSubscriber。可分别通过session的createReceiver(Queue)或createSubscriber(Topic)来创建。当然也可以session的creatDurableSubscriber方法来创建持久化的订阅者。 7.MessageListener消息监听器。如果注册了消息监听器一旦消息到达将自动调用监听器的onMessage方法 6.好处 1.提供消息灵活性 2.松散耦合 3.异步性转载于:https://www.cnblogs.com/hangzhi/p/9008433.html