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

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

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

消息确认

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

持久化

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

发布确认

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

死信

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

集群会高可用性

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

镜像队列

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

相关推荐
海里真的有鱼1 小时前
Spring Boot 项目中整合 RabbitMQ,使用死信队列(Dead Letter Exchange, DLX)实现延迟队列功能
开发语言·后端·rabbitmq
喜欢猪猪1 小时前
深度解析ElasticSearch:构建高效搜索与分析的基石原创
分布式
蘑菇蘑菇不会开花~2 小时前
分布式Redis(14)哈希槽
redis·分布式·哈希算法
问道飞鱼3 小时前
分布式中间件-Pika一个高效的分布式缓存组件
分布式·缓存·中间件
小宋10215 小时前
玩转RabbitMQ声明队列交换机、消息转换器
服务器·分布式·rabbitmq
懒洋洋的华36910 小时前
消息队列-Kafka(概念篇)
分布式·中间件·kafka
March€11 小时前
分布式事务的基本实现
分布式
DieSnowK12 小时前
[Redis][环境配置]详细讲解
数据库·redis·分布式·缓存·环境配置·新手向·详细讲解
Lill_bin13 小时前
深入理解ElasticSearch集群:架构、高可用性与数据一致性
大数据·分布式·elasticsearch·搜索引擎·zookeeper·架构·全文检索
qingcyb20 小时前
下载Kafka 3.0.0教程
分布式·kafka