RabbitMQ **警告** Mnesia超载

时间:2014-06-25 10:49:55

标签: rabbitmq

RabbieMQ Cluster不接受新连接! 连接的套接字数量很少,Rabbitmq日志中唯一的消息是:

  

**警告** Mnesia超载

这是什么意思?我该如何解决?

4 个答案:

答案 0 :(得分:1)

在mac中: 删除/ usr / local / var / lib / rabbitmq /

sudo rm -r / usr / local / var / lib / rabbitmq /

和unintsall rabbitmq

brew unintsall rabittmq

而不是安装

brew install rabbitmq

启动rabbitmq:

的RabbitMQ服务器

答案 1 :(得分:0)

这可能发生在一系列情况下,从暂停的机器到运行时调度程序选择首先让Mnesia表单没有机会运行,之后,大量的时间(目标是大量的时机点火)一个非常简洁的时间表)。

如果你有可能,请考虑使用Erlang 17.x.这通常不是一个问题的指示。

有关详细信息,请参阅http://streamhacker.com/2008/12/10/how-to-eliminate-mnesia-overload-events/

答案 2 :(得分:0)

我也遇到了这个问题,这是我的解决方案:

附加了日志文件:rabbit@localhost.log:

opend

这表示一个进程可以使用的打开文件数超过了限制。

我尝试在终端上运行ulimit -n来查看操作系统中的进程可以使用多少个文​​件,并且您想通过执行以下命令来增加该数目:

sudo launchctl limit maxfiles 1000000 1000000

希望它将解决您的问题。

答案 3 :(得分:-1)

您需要增加dc_dump_limit。根据文档:

  

-失忆症 dc_dump_limit 号。控制从内存中转储 disc_copies 表的频率。表在filesize(Log) > (filesize(Tab)/Dc_dump_limit)时转储。较低的值可减少CPU开销,但会增加磁盘空间和启动时间。 默认值为4

因此,以正确的`-mnesia dc_dump_limit = X来启动Erlang可能有助于解决问题。