RabbitMq如何保证消息的可靠性和稳定性

RabbitMq如何保证消息的可靠性和稳定性

rabbitMq不会百分之百让我们的消息安全被消费,但是rabbitMq提供了一些机制来保证我们的消息可以被安全的消费。

消息确认

消息者在成功处理消息后可以发送确认(ACK)给rabbitMq,通知消息已经被成功处理。如果RabbitMq没有收到确认,它可以重新发消息给另外一个消费者。这样可以防止消息丢失。

持久化

生产者可以将消息标记为持久的, 这样哪怕我们重启了也不会丢消息。队列可也可以标记为持久的。

发布确认

他就是生产者确认消息已经被交换机接受并且已经被消费者接受。

死信

如果消息因为某些原因无法被处理(例如,消息被拒绝并且不在重新投递),他可以被发送到死信队列进行进一步处理或者分析。

集群会高可用性

rabbitmq支持集群和镜像队列,来提高可靠性和可用性,在集群中可以实现消息和队列在多个节点间复制,防止单点故障消息丢失。

镜像队列

镜像队列就是主队列的副本。他和主从的却别就是主从式异步同步,他说同步复制

相关推荐
巴里巴气3 小时前
kafka架构原理快速入门
分布式·kafka
laplaya4 小时前
高性能分布式通信框架:eCAL 介绍与应用
c++·分布式
lifallen7 小时前
Kafka ISR机制和Raft区别:副本数优化的秘密
java·大数据·数据库·分布式·算法·kafka·apache
Code季风9 小时前
深入理解 Redis 分布式锁:如何实现有效的过期时间和自动续期
redis·分布式·微服务
雪球不会消失了10 小时前
Kafka学习记录
分布式·学习·kafka
在未来等你10 小时前
RabbitMQ面试精讲 Day 13:HAProxy与负载均衡配置
中间件·面试·消息队列·rabbitmq
刘大辉在路上10 小时前
以rabbitmq为例演示podman导出导入镜像文件
分布式·rabbitmq·podman
Code季风12 小时前
Redis 缓存:应对缓存雪崩、缓存击穿和缓存穿透
数据库·redis·分布式·后端·缓存·微服务·mybatis
都叫我大帅哥1 天前
🐇 RabbitMQ延时队列:让消息学会“踩点上班”的终极指南
java·rabbitmq
_李白_1 天前
分布式选举算法:Bully、Raft、ZAB
分布式