RabbitMQ:从队列扇出(不是从交换)

标签 rabbitmq message-queue amqp

RabbitMQ 有没有办法让多个消费者从同一个队列中获取相同的消息?

我需要将相同的信息发送给任何正在倾听的人,但还要确保有人处理它。基本上,我需要 扇出 相结合的交换功能basic.ack 队列的功能。有没有办法以可扩展的方式实现这一点?

最佳答案

如果您试图确保正确处理消息,确认已提供此功能。如果您的消费者无法处理该消息并且未提供 ack,它将被重新排队并由下一个可用的消费者再次处理。在同一个队列上实现多个竞争消费者将为您提供循环交付,让其他消费者有机会成功。

这将如何扩展取决于与传入速率、队列持久性、预取以及队列上有多少竞争消费者相比,处理每条消息所需的时间。

关于RabbitMQ:从队列扇出(不是从交换),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19389249/

相关文章:

python - 在 Pika 或 RabbitMQ 中,如何检查当前是否有消费者正在消费?

node.js - 使用发布者确认 RabbitMQ,在什么情况下发布者会收到成功/失败的通知?

SQL Server 服务代理 - 消息超时

c++ - 在 qpid cpp 客户端中接收传入消息时发生异常

rabbitmq - amq.topic 的预期用途是什么?

rabbitmq - RabbitMQ 的 "x-expires"参数的 ZeroMQ 等价物是什么?

java - 尝试使用rabbitmq在Docker容器之间发送消息

header - RabbitMQ:如何在 Header Exchange 中使用复杂的表达式?

c# - Azure 服务总线中的死信队列中的消息是否会过期?

java - 用于在两个进程之间共享数据的本地消息队列