java吧 关注:1,251,548贴子:12,735,872
  • 3回复贴,共1

一个关于RabbitMQ的问题

只看楼主收藏回复

一个交换机(direct)绑定了一个队列,路由键有多个;现在有两个消费者,一个消费者去消费这个队列绑定的所有的路由键的消息,另一个消费其中一个路由键的消息。疑问是,是不是只要消费者绑定了路由键,不管绑定了该路由键的消息是否被消费,都会被多个绑定了该路由键的消费者消费?如果我只想绑定了这个路由键的多个消费者中的一个消费者去消费这个消息,能实现吗?


IP属地:四川1楼2019-10-10 11:11回复
    从你图上我感觉你没有弄明白路由模式的执行流程。每个消费者对应每个队列。而不是多个消费者对应一个队列。按你想做的应该是应两个消费者。两个队列第一个队列绑定路由key1,key2,key3。第二个队列绑定的是key1。也不知道是我学艺不深没有见过你这种用法,还是怎么。至少我目前用过的,见到的有没有你这种用法


    2楼2019-10-10 11:56
    回复
      同上,如果你只想让一个消费者消费,为何还要绑定两个消费者?


      IP属地:广西3楼2019-10-10 13:09
      回复
        弄2个队列啊,绑定到一个广播模式交换机,消息会同时发到2个队列里,每个消费者监听一个队列,做不同的处理不就行了


        IP属地:上海来自iPhone客户端4楼2020-03-12 20:25
        回复