消息队列 点对点与发布订阅区别

1.JMS中定义

JMS规范目前支持两种消息模型:点对点(point to point, queue)和发布/订阅(publish/subscribe,topic)

2.点对点模式

消息生产者生产消息发送到queue中,然后消息消费者从queue中取出并且消费消息。这里要注意:
消息被消费以后,queue中不再有存储,所以消息消费者不可能消费到已经被消费的消息。
Queue支持存在多个消费者,但是对一个消息而言,只会有一个消费者可以消费。

在这里插入图片描述

生产者发送一条消息到queue,只有一个消费者能收到。

3.发布/订阅模式

消息生产者(发布)将消息发布到topic中,同时有多个消息消费者(订阅)消费该消息。和点对点方式不同,发布到topic的消息会被所有有效订阅者消费,如果消费者是之后再订阅,则之前的消息是不能被消费的。

在这里插入图片描述

发布者发送到topic的消息,只有订阅了topic的订阅者才会收到消息。

发布了95 篇原创文章 · 获赞 50 · 访问量 10万+

猜你喜欢

转载自blog.csdn.net/jc0803kevin/article/details/101370837