Jav*_*aSa 7 python amqp rabbitmq pika
我实现了多个消费者,他们从单个队列中获取消息,我使用类似于此示例的内容进行此操作,除了我在无限循环上执行basic.get进行轮询.
任何想法如何防止所有消费者之间的竞争,因为只有一个消费者会得到消息而另一个消费者将继续进行轮询,直到另一个消息出现? 我试图遵循一个逻辑,一旦我收到消息,我就会删除消息,但似乎其他一些队列,设法在第一个获取消息之前获取消息并删除消息.所以大家都得到了这个消息
提前致谢
Der*_*ley 9
任何想法如何防止所有消费者之间的竞争,因为只有一个消费者会得到消息而另一个消费者将继续进行轮询,直到另一个消息出现?
你不能,你设置的方式.RabbitMQ会将消息循环到消费者,但只有一个消费者会从队列中接收消息.这是在RabbitMQ中设计的,当您在单个队列上有多个使用者时.
如果您需要所有消费者接收所有消息,那么您需要更改配置,以便每个消费者拥有自己的队列.然后,您需要通过交换发布消息,该消息将消息传递给所有消费者的所有队列.
最简单的方法是使用扇出交换类型.
归档时间:
10 年,10 月 前
查看次数:
10707 次
最近记录: