我只是在查看 RabbitMQ 的配置细节并遇到了
[{rabbit, [{vm_memory_high_watermark, 0},
{disk_free_limit, {mem_relative, 1.0}}
]
}]
这个配置是什么意思?
vm_memory_high_watermark
设置为 0 意味着 => 在 rabbitmq 应用程序启动时立即阻止所有发布者?但是我们仍然看到 rabbitmq 能够将我们发送的任何消息排队。
16720 rabbitmq 20 0 142m 62m 2408 S 0 **1.6** 0:06.88 beam.smp
每当我们向代理发送消息时,我们都会看到该进程的内存使用量增加。那么,这是否意味着尽管水印设置为 0,但消息仍在内存中?
我们很想知道如果 ram 的内存限制达到并且仍在发送 msgs 会发生什么?要么发布者被阻止?或者如果可用,消息会被换出到磁盘?