课程
/后端开发
/Java
/RabbitMQ消息中间件极速入门与实战
如果路由失败 触发returnCallBack这个方法(replyCode=312) 使得confirm的ack为true 也就是并没有发送到服务器 但是返回ack=true,这种情况怎么解决呢
2019-01-13
源自:RabbitMQ消息中间件极速入门与实战 3-4
正在回答
confirm是生产者将消息发送到交换机后的回调,ack是true,说明消息已经成功发送到交换机了; returnCallBack是交换机路由到队列的回调,所以路由失败跟ack没关系; 解决方案: 路由失败的时候,把当前消息保存下来(自己随意,不丢就行),然后再针对这部分消息做补偿;
举报
入门RabbitMQ,并整合SpringBoot2.x,实现100%消息的可靠性投递!
1 回答关于分布式发送消息的问题
1 回答如何确保消费方成功消费到消息呢?
1 回答关于发送消息
1 回答如果一分钟后,服务端回调消息投递成功了。但是这边已经被定时任务改为投递失败了,怎么处理?
4 回答在自学的过程中遇到了一个让我比较困惑的问题:第一次进行消息投递到MQ 是回调函数 返回值为 false 、消息状态到数据库中状态为0、当启动定时任务进行未发送成功的进行轮询发送时抓起状态为0的、重新进行投递后回投递成功 、请问什么原因呢 有大神吗