提问者:小点点

扇出交换场景下RabbitMQ队列磁盘空间占用


如果RabbitMQ代理有一个扇出交换,其中绑定了许多队列,其中队列是持久的,传递给交换的消息是持久的/持久的,每个队列是否会为消息存储一个单独的副本,或者代理可能会找出并优化排队的消息持久性,而不是在扇出中为每个队列多次存储有效负载,而是存储消息链接/引用之类的东西?


共1个答案

匿名用户

这取决于消息的大小。通过持久性,每个接收消息的持久队列都将有一个引用该消息的队列索引。较大的消息(

较小的消息将完全存储在队列索引中,消息存储中没有条目。如果您的扇出交换收到一条小消息,那么每个绑定的队列都将拥有自己的整个消息副本。

RabbitMQ消息持久性的一个很好的解释可以在https://www.rabbitmq.com/persistence-conf.html.