【问题标题】:Using RabbitMQ - Multiple Producer and Multiple Consumers使用 RabbitMQ - 多生产者和多消费者
【发布时间】:2016-03-01 01:45:09
【问题描述】:

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

例如:

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

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

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

有人可以发帖和示例吗?

【问题讨论】:

    标签: python rabbitmq rabbitmq-exchange


    【解决方案1】:

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

    【讨论】:

    • 话题交换呢?
    • 怎么样?您有一个特定的场景 - 一对消费者/客户。每人使用一个队列。好像您查看 RabbitMQ 的功能并问自己“如果我不使用它们,我会失去一些东西”。你不是。使用更少的队列并没有固有的优势 - 复杂性、存储是相同的,如果在“不要只使用队列,使用一些过滤方案”场景中更大的话。
    【解决方案2】:

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

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-03-25
      • 2017-02-24
      • 2015-04-05
      • 2015-03-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多