rabbitmq消息发送失败

rabbitmq消息发送失败、

一、概述

  rabbitmq消息发送失败,主要有三种

  1、producter连接mq失败,消息没有发送到mq

  2、producter连接mq成功,但是发送到exchange失败

  3、消息发送到exchange成功,但是路由到queue失败

二、发送失败处理

  producter连接mq失败,消息没有发送到mq

    可以使用trycatch捕获异常,将消息保存到db中后续进行重发处理

  producter连接mq成功,但是发送到exchange失败

    通过实现ConfirmCallback接口,对发送结果进行处理,根据ack来判断是否成功

    同时我们可以扩写correlationData类,因为correlationData只有一个ID属性,没有关于消息的水性,我们可以扩展这个类,在发送消息时,把想要的数据写入就可以了

  消息发送到exchange成功但是路由到queue失败

    可以通过实现ReturnCallback接口,对回退消息进行重发处理。

  消息持久化还是创建队列的时候设置一下就行了,主要是为了防止rabbitmq宕机,rabbitmq重启后,会自己去寻找持久化的数据

原文地址:https://www.cnblogs.com/gushiye/p/14016902.html