1

我在 ubuntu 上使用 nginx 作为代理运行清漆,每隔几天就会出现 (24: Too many open files) 错误。重启nginx即可解决问题。在研究了这个错误后,我发现常见的解决方案是在 nginx.conf 中增加 worker_rlimit_nofile。我觉得这不是一个真正的解决方案,因为我设置的限制也可能达到。

为什么 nginx 保持这些文件(我相信这些是套接字)打开?什么将解决我的情况?

更新:

我刚刚注意到,当我运行 lsof 时,有数百个清漆套接字打开。我相信我的问题是这些套接字没有关闭。

4

1 回答 1

0

当服务器是 Web 服务器时,增加服务器上打开的标准最大文件数是一个很好的做法,临时端口数也是如此。

我认为打开文件的默认数量是 1024,这对于 varnish 来说太小了

我将其设置为 131072

ulimit -n 131072

于 2016-10-10T16:31:25.510 回答