在RabbitMQ中,怎么确保消息不会丢失?

为了确保消息不会丢失,可以从以下3个方面解决:

1.在创建队列的时候设置durable为true,发布消息的时候设置delivery为2,从而确保队列和消息都是持久的。

这样,就算是RabbitMQ服务器重启也不会造成消息的丢失。

2.开启发布确认模式,这样的话,生产者会等待服务器的确认响应,确保消息已经成功存储。

3.使用明确的消费者确认机制,当消费者处理完消息之后,向RabbitMQ发送确认,只有在RabbitMQ收到消费者发来的确认之后才会将消息从队列中删除。

相关推荐
難釋懷17 小时前
分布式锁的原子性问题
分布式
ai_xiaogui18 小时前
【开源前瞻】从“咸鱼”到“超级个体”:谈谈 Panelai 分布式子服务器管理系统的设计架构与 UI 演进
服务器·分布式·架构·分布式架构·panelai·开源面板·ai工具开发
凯子坚持 c18 小时前
如何基于 CANN 原生能力,构建一个支持 QoS 感知的 LLM 推理调度器
分布式
飞升不如收破烂~18 小时前
Redis 分布式锁+接口幂等性使用+当下流行的限流方案「落地实操」+用户连续点击两下按钮的解决方案自用总结
数据库·redis·分布式
无心水18 小时前
分布式定时任务与SELECT FOR UPDATE:从致命陷阱到优雅解决方案(实战案例+架构演进)
服务器·人工智能·分布式·后端·spring·架构·wpf
Lansonli19 小时前
大数据Spark(八十):Action行动算子fold和aggregate使用案例
大数据·分布式·spark
闻哥19 小时前
Kafka高吞吐量核心揭秘:四大技术架构深度解析
java·jvm·面试·kafka·rabbitmq·springboot
invicinble20 小时前
对于分布式的原子能力
分布式
心态还需努力呀1 天前
CANN仓库通信库:分布式训练的梯度压缩技术
分布式·cann