【问题标题】:RabbitMQ broadcast events to all consumersRabbitMQ 向所有消费者广播事件
【发布时间】:2017-05-15 19:50:53
【问题描述】:

是否可以使用topic exchange 作为真正的事件通知系统?

我在名为Cherry 的给定交换上创建了topic 交换。我有一个发布者在路由键cherry.user.created 和许多具有相同路由键的消费者,但是当我发布一个事件时,只有一个消费者消费一个事件。我认为该主题可以用作“真实事件广播”——当给定事件发生时,每个消费者都会收到通知,但现在只有一个消费者消费一个事件,而其他消费者不知道创建的事件......

【问题讨论】:

  • 很可能所有消费者都使用同一个队列。如果不是这样,请提供有关您的发布和消费方式的更多详细信息。
  • 年,你是对的,我用过同样的队列,谢谢!

标签: c# .net rabbitmq amqp


【解决方案1】:

澄清我对队列的评论。在 rabbitmq 中,如果多个消费者使用同一个队列 - 传递到该队列的消息总是以循环方式分派,无论如何。因此,当您订阅主题交换时,最好的方法是为每个消费者声明新队列(使用任何名称,或者更好的由 rabbit 自己生成的随机队列)并使用目标路由密钥 (cherry.user.created) 将这些队列绑定到交换。

【讨论】:

    猜你喜欢
    • 2020-09-12
    • 1970-01-01
    • 2020-09-20
    • 1970-01-01
    • 2011-04-15
    • 1970-01-01
    • 2020-04-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多