当前位置:   article > 正文

ACK消息确认机制_ack确认机制

ack确认机制

ACK消息确认机制
ACK机制是消费者从RabbitMQ收到消息并处理完成后,反馈给RabbitMQ,RabbitMQ收到反馈后才将次消息从队列中删除。
1. 如果一个消费者在处理消息出现了网络不稳定、服务器异常等现象,那么就不会有ACK反馈,RabbitMQ会认为这个消息没有正常消费,会将消息重新放入队列中。
2. 如果在集群的情况下:RabbitMQ会立刻将这个消息推送给这个在线的其他消费者。这种机制保证了在消费者服务端故障的时候,不丢失任何消息和任务。
3. 消息永远不会从RabbitMQ中删除:只有当消费者正确返送ACK反馈,RabbitMQ确认收到后,消息才会从RabbitMQ服务的数据中删除。
4. 消息的ACK确认机制默认是打开的。
解决方式
方式一:可以在消费消息中try-catch
由于在消费消息时可能抛出运行时异常,这种解决方式难于处理和控制。
方式二:在Consumer的配置文件中配置重试机制
配置开启重试及重试次数,在RabbitMQ没有收到ACK确认时,重新放入队列,重试指定次数后不再放入队列。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/煮酒与君饮/article/detail/878461
推荐阅读
相关标签
  

闽ICP备14008679号