对于我的 OS X 服务器来说,打开的文件太多

对于我的 OS X 服务器来说,打开的文件太多

我收到错误“打开的文件太多”。当进程同时有大约 256 个连接时,似乎会发生这种情况。如果我这样做

sysctl -A | grep maxfiles

我懂了:

kern.maxfiles = 12288
kern.maxfilesperproc = 10240

我的服务器由 launchd 管理。我还需要在 plist 文件中设置 NumberOfFiles 选项吗?

答案1

OSX 上 bash 的默认限制设置看起来像 256。

正如乔所说:

限制-nx

其中 x 可以是更大的数字。

您可能希望在运行进程时将其添加到进程的启动脚本中,或者添加到 .bashrc 中以使其更加永久。

lsof将让你看到每个文件是什么,尽管此上下文中的文件也是网络连接、管道以及实际文件。

相关内容