RabbitMq防止消息丢失

RabbitMq防止消息丢失

消息的传递路径

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

出现消息丢失的位置

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

解决

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


参考文章
参考文章

相关推荐
初次攀爬者1 天前
RabbitMQ的消息模式和高级特性
后端·消息队列·rabbitmq
初次攀爬者3 天前
ZooKeeper 实现分布式锁的两种方式
分布式·后端·zookeeper
让我上个超影吧4 天前
消息队列——RabbitMQ(高级)
java·rabbitmq
塔中妖4 天前
Windows 安装 RabbitMQ 详细教程(含 Erlang 环境配置)
windows·rabbitmq·erlang
断手当码农4 天前
Redis 实现分布式锁的三种方式
数据库·redis·分布式
初次攀爬者4 天前
Redis分布式锁实现的三种方式-基于setnx,lua脚本和Redisson
redis·分布式·后端
业精于勤_荒于稀4 天前
物流订单系统99.99%可用性全链路容灾体系落地操作手册
分布式
Ronin3054 天前
信道管理模块和异步线程模块
开发语言·c++·rabbitmq·异步线程·信道管理
Asher05094 天前
Hadoop核心技术与实战指南
大数据·hadoop·分布式
凉凉的知识库4 天前
Go中的零值与空值,你搞懂了么?
分布式·面试·go