RabbitMQ一条消息被多个消费者消费-CSDN博客

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

前言可略过
正常情况下交换机和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还是只能被消费一次。

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: RabbitMQ

“RabbitMQ一条消息被多个消费者消费-CSDN博客” 的相关文章