消息队列 两大模式

本文将介绍消息队列中的队列模式、发布订阅模式两大模式。

一、队列模式

最初的消息队列就是一个严格意义上的队列。

在队列模式下,每个消息只能被消费一次,各个消费者需要争抢这些消息。

如果存在若干个不同类型的消费者,则需要额外增加若干个队列,生产者每次发送消息时向各个队列都发送一份,各类消费者消费属于自己的那个队列。这种做法存在几个问题:

  • 同样的消息被复制到多个队列中,造成资源的浪费
  • 生产者需要了解消费者的种类数量,违背了 “解耦” 的原则

二、发布订阅模式

为了解决上述问题,演化出了另外一种消息队列模型。

在发布订阅模式下,不同的订阅者可以独立地消费消息。

参考