2

我想知道是否可以有多个生产者和多个消费者?

例如:

-> 消费者 A 只接收来自生产者 A 的消息

-> 消费者 B 只接收来自生产者 B 的消息

或者我需要创建多个队列吗?

有人可以发布和示例吗?

4

2 回答 2

1

简短回答:您需要创建多个队列。

队列就是这样一个有序的消息序列,您可以在其中按消息到达的顺序访问消息。这使得在同一个队列中为特定消费者提供消息是不切实际的,因为如果该消息不适合您的消费者,您将不得不“将其归还”以免丢失它,但随后它再次出现在队列中并且您只会再次收到相同的消息,除非您很幸运并且实际的接收者得到了它。

当您希望在多个接收者之间分配处理消息的负载时,一个队列上的多个消费者很有用,但如果您希望消息到达特定端点,请创建一个专用于该端点的队列。

于 2015-11-26T22:23:21.503 回答
1

只需创建多个队列。从 RabbitMQ 的角度来看,它们是零成本的,并且准确地表达了您的要求。

于 2015-11-26T22:12:28.997 回答