RabbitMQ如何确保消息不丢失?
Posted 四猿外
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RabbitMQ如何确保消息不丢失?相关的知识,希望对你有一定的参考价值。
消息持久化,当然前提是队列必须持久化
RabbitMQ 确保持久性消息能从服务器重启中恢复的方式是, 将它们写入磁盘上的一个持久化日志文件,当发布一条持久性消息到持久交换器上时, Rabbit 会在消息提交到日志文件后才发送响应。
一旦消费者从持久队列中消费了一条持久化消息, RabbitMQ 会在持久化日志中把这条消息标记为等待垃圾收集。如果持久化消息在被消费之前RabbitMQ 重启,那么Rabbit 会自动重建交换器和队列(以及绑定),并重新发布持久化日志文件中的消息到合适的队列。
以上是关于RabbitMQ如何确保消息不丢失?的主要内容,如果未能解决你的问题,请参考以下文章