RabbitMq防止消息丢失

RabbitMq防止消息丢失

消息的传递路径

消息发送方 --> MQ --> 消息消费方

出现消息丢失的位置

  1. 消息发送方: 消息传输过程中丢失
  2. MQ: MQ收到消息后,存在内存中,还未被消费就宕机了,导致数据丢失
  3. 消息消费方: 消息到达消费方后, 服务挂了,MQ以为消息被消费了,导致数据丢失

解决

  1. 发送方: 开启MQ的confirm模式
  2. MQ: 开启exchange,queue,消息的持久化
  3. 消费方: 开启MQ的手动ack
  4. 消息补偿机制


参考文章
参考文章

相关推荐
yours_Gabriel1 小时前
【java面试】微服务篇
java·微服务·中间件·面试·kafka·rabbitmq
孤的心了不冷10 小时前
【Linux】Linux安装并配置RabbitMQ
linux·运维·后端·rabbitmq
可儿·四系桜10 小时前
如何在 Java 中优雅地使用 Redisson 实现分布式锁
java·开发语言·分布式
菜鸟康14 小时前
C++实现分布式网络通信框架RPC(2)——rpc发布端
分布式·网络协议·rpc
斯普信专业组16 小时前
Kafka主题运维全指南:从基础配置到故障处理
运维·分布式·kafka
百度Geek说17 小时前
BaikalDB 架构演进实录:打造融合向量化与 MPP 的 HTAP 查询引擎
数据库·分布式·架构
q5673152318 小时前
分布式增量爬虫实现方案
开发语言·分布式·爬虫·python
一叶知秋哈20 小时前
Canal1.1.5监听Mysql数据变动发送消息给Rabbit MQ
mysql·rabbitmq
懒虫虫~1 天前
基于SpringBoot利用死信队列解决RabbitMQ业务队列故障重试无效场景问题
spring boot·rabbitmq
Chan161 天前
【 SpringCloud | 微服务 MQ基础 】
java·spring·spring cloud·微服务·云原生·rabbitmq