跳到主要内容
版本:4.1

经典队列以“惰性”队列模式运行(惰性队列)

提示

RabbitMQ 不再支持“惰性”模式。此页面仅供历史参考。

在 RabbitMQ 3.12 之前,经典队列可以配置为以 lazy 模式运行,这意味着它们会将所有消息写入磁盘,并且根本不会将消息保留在内存中。此设置现在已被忽略,尽管经典队列的当前行为类似于惰性模式过去提供的行为。当前的表现是

  • 一般来说,消息会被写入磁盘,尽管会有延迟;消息会在内存中短暂缓冲,直到缓冲区刷新到磁盘
  • 一小部分消息会保存在内存中,以便快速传递给消费者(保存在内存中的消息数量取决于消费者消费消息的速度)
  • 如果生产者发布的消息可以立即传递给消费者,并且消费者在消息写入磁盘之前确认了消息,则该消息将不会写入磁盘(此时消息已经传递并确认,因此无需将其写入磁盘)

在旧版本中,您需要在每个队列的基础上选择低延迟(非惰性)和低内存使用率(惰性)。当前的实现提供了低延迟以及低且稳定的内存使用率。

经典队列页面提供了有关经典队列实现的更多详细信息。

© . All rights reserved.