MongoDB-连接太多错误


MongoDB - Too Many Connection Error

我们已经使用node.js()和mongo分片开发了聊天模块,并投入生产服务器。但今天,它在mongodb中的连接达到了20000,日志中出现了错误"连接太多"。之后,我们重新启动节点服务器并重新启动。现在一切都正常了。但我们必须知道如何立即解决这个问题。

任何配置都可以在mongodb中设置它,以在未使用时终止连接,或者在建立连接时设置过期时间。

请帮助我们解决此问题。

谨致问候,Kumaran

您可能没有遇到MongoDB问题。可以连接到MongoDB的连接数量有一个上限,通常大致等于它可用的文件描述符的最大数量

听起来你的代码中有一个bug(很可能)或猫鼬(不太可能),它要么创建了比关闭更多的连接,要么一开始就从未关闭连接。例如,在Java中,为每个查询创建一个新的"Mongo"类实例会导致这种问题,但我不使用node.js/mongoose,所以我不知道它的js等价物是什么

密切关注mongostat,检查连接数是否总是增加,或者有时会减少。如果是前者,则无论出于何种原因,您的代码都不会释放连接。如果是后者,那么创建它们的速度就比断开空闲连接的速度快。这通常是因为对每个查询都要做一些繁重的工作(比如驱动程序初始化它的连接池),而不是一次。