8

那时我连接到 RabbitMQ 服务器,我的连接显示处于阻塞状态,我无法发布新消息我有 6 GB 的可用内存,磁盘空间也约为 8 GB

如何在 RabbitMQ 中配置磁盘空间限制

4

2 回答 2

10

我遇到了同样的问题。似乎rabbitmq服务器使用的内存超过了阈值

http://www.rabbitmq.com/memory.html

我运行以下命令来取消阻止这些连接:

rabbitmqctl set_vm_memory_high_watermark 0.6

(默认值为 0.4)

于 2012-05-15T23:24:41.380 回答
3

默认情况下,[disk_free_limit](source: [1]) 必须超过可用 RAM 的 1.0 倍。在您的情况下确实如此,因此您可能需要检查究竟是什么阻塞了流程。为此,请阅读 [rabbitmqctl man](source: [2]),然后运行 ​​last_blocked_by 命令。这应该告诉你阻塞的原因。

假设它是内存(并且您不知何故没有正确计算可用磁盘空间),要更改 disk_free_limit,请阅读 [configuring rabbitmq.config](来源:[1]),然后打开您的 rabbitmq.config 文件并添加以下行:{rabbit, [{disk_free_limit, {mem_relative, 0.1}}]}在配置声明中。我的 rabbitmq.config 文件如下所示:

[
{rabbit, [{disk_free_limit, {mem_relative, 0.1}}]}
].

当然,具体数字由您决定。

来源

  1. http://www.rabbitmq.com/configure.html#configuration-file
  2. http://www.rabbitmq.com/man/rabbitmqctl.1.man.html
于 2012-05-10T22:27:22.157 回答