网站高端建设开发公司,创意产品设计大赛,郑州制作平台网站,大良营销网站建设新闻前言#xff1a;可略过 正常情况下交换机和queue绑定#xff0c;消息经过交换机发送给指定的队列。队列的消息被监听消费后就被删除#xff0c;queue的消息仅能被消费一次。 如何解决呢#xff0c;如果单从queue的角度出发#xff0c;可能会联想到fanout-广播模式#xf…前言可略过 正常情况下交换机和queue绑定消息经过交换机发送给指定的队列。队列的消息被监听消费后就被删除queue的消息仅能被消费一次。 如何解决呢如果单从queue的角度出发可能会联想到fanout-广播模式给每一个消费者配置一个指定queue这样生产者的消息经fanout类型交换机发送给所有绑定的queue终端消费者监听queue即可。 思路可行but太繁琐了且占内存。如果有一百万个消费者呢不合理。那把queue的消息监听后存储到数据库消费者再都去查询怎么样呢也行不通因为引入mq就是避免数据库吞吐量小响应慢。
方法消费者直接监听交换机即可不指定queue
RabbitListener注解点进去里面有一些封装号的参数参数格式如下。 RabbitListener( bindings QueueBinding( value Queue(), exchange Exchange(value “exchange-name”)) )
注意仅需要指定监听的交换机名称即可不只当queue否则一个msg还是只能被消费一次。