RabbitMQ的相关使用
参考:
https://blog.csdn.net/qq_18671415/article/details/115247964
我在实际工作中对RabbitMQ的使用:
1. 作为消费者,我使用了如下类似的注解:
@RabbitListener(bindings = @QueueBinding( // value = @Queue(value = "${my.rabbitmq.queue}", durable = "true"), value = @Queue(value = "ccc", durable = "true"), exchange = @Exchange(value = "boot_topic_exchange", type = "topic"), key = "boot.haha" ))
然后就算我没有在producer端绑定queue和Exchange的关系,
如果我在consumer端自定义这样queue,绑定对应producer 发送过来的 Exchange,我也可以在RabbitMQ 创建一个名对ccc的一个持久化的队列,
这样,由consumer绑定队列,不会因为各种环境导致消息消费错误的情况,因为 queue的名字可以在 配置文件进行配置(根据不同的环境进行配置),
这样就不会错误地消费消息,同样,不会导致消息堆积的情况。