2

我对 RabbitMQ 持久队列(即 delivery_mode = 2)的理解是它们在 RAM 中运行,但是消息会刷新到磁盘,以便在进程重新启动或机器重新启动时可以恢复它们。

我不清楚当机器内存不足时预期的行为是什么。如果队列超载、死亡并需要恢复,那么简单地从磁盘支持的存储中加载消息将消耗所有可用的 RAM。

在这种情况下,持久队列是否仅将部分消息加载到 RAM 中?

4

1 回答 1

0

当内存填满时,RabbitMQ 会将消息分页到磁盘。请参阅https://www.rabbitmq.com/memory.html部分“配置寻呼阈值”。

于 2015-05-18T23:47:16.717 回答