rabbitmq是否支持将相同的数据推送到多个使用者?

rabbitmq是否支持将相同的数据推送到多个使用者?,rabbitmq,Rabbitmq,我有一个rabbitmq集群用作工作队列。有5种消费者希望使用完全相同的数据 我现在知道的是使用扇出交换将数据“复制”到5个不同的队列。这5个消费者可以使用不同的队列。这是一种浪费资源的行为,因为文件队列中的数据是相同的 我的问题是,rabbitmq是否支持将相同的数据推送到多个使用者?就像邮件需要在指定时间内确认才能删除一样 我从rabbitmq电子邮件组得到了以下答案。简言之,答案是否定的。。。我在上面所做的是正确的方法 。。。扇出exchange将数据“复制”到5个不同的队列。这5个消

我有一个rabbitmq集群用作工作队列。有5种消费者希望使用完全相同的数据

我现在知道的是使用扇出交换将数据“复制”到5个不同的队列。这5个消费者可以使用不同的队列。这是一种浪费资源的行为,因为文件队列中的数据是相同的

我的问题是,rabbitmq是否支持将相同的数据推送到多个使用者?就像邮件需要在指定时间内确认才能删除一样


我从rabbitmq电子邮件组得到了以下答案。简言之,答案是否定的。。。我在上面所做的是正确的方法

。。。扇出exchange将数据“复制”到5个不同的队列。这5个消费者可以使用不同的队列。这是一种浪费资源的行为,因为文件队列中的数据是相同的

如果不想复制消息,则可以使用一个队列中的5个使用者

rabbitmq是否支持将相同的数据推送到多个使用者

在AMQP协议术语中,您将消息发布到exchange,然后代理(RabbitMQ)决定如何处理消息-假设它找到了(一个或多个)的队列消息,然后将该消息放在该队列的顶部(RabbitMQ中的队列是经典的FIFO队列,这在某种程度上破坏了RabbitMQ中的AMQP实现)。只有在该消息传递给消费者之后(或由于队列长度限制或每个队列或每个消息ttl(如果有)而死亡)

邮件需要在指定的时间内确认才能删除

消息发布后无法更改消息正文或属性(实际上,扩展名和其他一些可能会更改路由键,例如,添加、删除和更改某些头,但这是非常特殊的情况)。所以,如果你想追踪ack的号码,你必须用更改的正文或标题重新发布已消费的邮件(取决于你计划在哪里存储ack的计数器,但标题非常适合这一点)

还要注意的是,有
redelivered
message属性,它表示消息是否已被使用,但随后被重新传递。此标志不计算redelivers数,因此它的使用非常有限