(node) 触发了文件数限制?

5

我在node.js实例中一直遇到一个错误,它报告这个错误:

(node) Hit max file limit. Increase "ulimit - n"

然而,当我检查我的ulimit -n时,它显示为65535。我的应用程序绝对不可能开启这么多连接。

有没有人有其他建议要检查什么?

谢谢。


3
发布一些代码会有帮助。 - Richard Schneider
1
你是在打开文件或连接吗?你会显式地关闭它们,还是依赖于由GC调用的析构函数来完成?你会在循环中创建它们吗?请记住,GC将在“稍后”关闭它们,其中“稍后”可能是在创建100个文件描述符并使用它们丢弃它们的循环的1000次迭代之后,因此如果你不在不再需要它们时关闭它们,那么你可能会在短时间内拥有100000个打开的文件描述符。 - BatchyX
在进程死亡之前,尝试使用进程的pid执行'ls -l /proc/<pid>/fd'命令,然后您将看到哪些文件描述符是打开的。 - linuts
1个回答

2
您可以尝试在/etc/security/limits.conf文件中设置限制。这里有一个“如何”指南,可以在文件中设置限制(在您的情况下应该是nofile值)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接