死信队列监听一开始的逻辑是正确的,但关于监听的内容以及动态判断有了新的思路,不断发现不断改善。
监听新思路
1.不必去破坏生产者消费者的关系,去创建死信队列的对应消费者,如果不同队列去创建对应的死信队列监听,没什么意义,复用刚开始的思路进行更改。mq配置更改指定监听死信队列,死信队列的名称是可以配置指定的
新建监听类
看下能从message获取到什么东西
还是对象里的那点东西,到有个新思路
不必去指定type维护队列的信息关系,获取
destination = queue: //add_xxxxxx,
即获取originalDestination属性,判断此消息的入队队列是哪个,然后获取该队列的消费者入队消息进行转换
这个方法是肯定能监听到死信队列的,亲测有效。
(1) 死信队列的配置(一般采用默认)
1. sharedDeadLetterStrategy
不管是queue还是topic,失败的消息都放到这个队列中。下面修改activemq.xml的配置,可以达到修改队列的名字。
2. individualDeadLetterStrategy
可以为queue和topic单独指定两个死信队列。还可以为某个话题,单独指定一个死信队列。
本文分享自微信公众号 - 赵KK日常技术记录(gh_cc4c9f1a9521)。
如有侵权,请联系 [email protected] 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。