RabbitMQ消息可靠性投递
什么是消息的可靠性投递?即保证消息百分百发送到消息队列中去,消息发送端需要接受到mq服务端接受到消息的确认应答。除此之外还应有完善的消息补偿机制,发送失败的消息可以再感知并二次处理。
生产者到交换机通过
confirmCallback
,
交换机到队列通过
returnCallback
当前环境
RabbitMQConfig
HealthHra3MQListener
yml
可靠性投递confirmCallback
confirmCallback是生产者到交换机,可以理解为确认消息是否发送成功。新版依赖可靠性投递默认是关闭的,使用以下方法开启:
yml
编码实现confirmCallback
LOG
可靠性投递returnCallback
returnCallback交换机到队列,消息从交换器发送到对应队列失败时触发:
- 第一步 开启returnCallback配置
- 第二步 修改交换机投递到队列失败的策略
yml