rabbitmq如何保证消息不丢失

rabbitmq的消息流

信息发送者-交换器-队列-消息消费者

哪个环节都容易丢失消息

  • 消息未到交换器
  • 消息未到队列
  • 队列中的消息丢失
  • 消费者未接受到消息

如何判断消息是否丢失?

利用publisher confirm机制来判断。

消息丢失如何处理?

  1. 回调方法即时重发
  2. 保存日志
  3. 保存到数据库然后定时重发,成功发送后即刻删除表中数据

MQ默认是内存存储消息,开启持久化功能可以确保缓存在MQ中的消息不丢失。

交换机持久化

队列持久化

消息持久化

相关推荐
hong_zc10 小时前
rabbitmq 的 TTL
rabbitmq
小橘快跑15 小时前
动态控制rabbitmq中的消费者监听的启动和停止
分布式·rabbitmq
xiaogg367817 小时前
springboot rabbitmq 延时队列消息确认收货订单已完成
spring boot·rabbitmq·java-rabbitmq
a5876917 小时前
消息队列(MQ)初级入门:详解RabbitMQ与Kafka
java·分布式·microsoft·面试·kafka·rabbitmq
Kevinyu_20 小时前
RabbitMQ
java·rabbitmq·java-rabbitmq
JAVA学习通2 天前
【RabbitMQ】---RabbitMQ 工作流程和 web 界面介绍
分布式·rabbitmq
kong@react2 天前
springboot项目详细配置rabbitmq及使用rabbitmq完成评论功能
spring boot·rabbitmq·java-rabbitmq
JAVA学习通2 天前
【RabbitMQ】如何在 Ubuntu 安装 RabbitMQ
分布式·rabbitmq
JAVA学习通2 天前
【RabbitMQ】----RabbitMQ 的7种工作模式
分布式·rabbitmq