nginx uLimit‘worker_connections超过打开文件资源限制:1024’

nginx uLimit‘worker_connections超过打开文件资源限制:1024’

我不断遇到这个错误nginx/error.log,这让我抓狂:

8096 worker_connections exceed open file resource limit: 1024

我已经尝试了所有能想到的方法,但还是无法找出限制 nginx 的原因。您能告诉我我遗漏了什么吗?

nginx.conf有这个:

worker_processes 4;
events {
        worker_connections 8096;
        multi_accept on;
        use epoll;
}

我像这样更改了系统的 Ulimit security/limits.conf

# This is added for Open File Limit Increase
*               hard    nofile          199680
*               soft    nofile          65535

root            hard    nofile          65536
root            soft    nofile          32768

# This is added for Nginx User
nginx           hard    nofile          199680
nginx           soft    nofile          65535

它仍然显示错误。所以我也尝试编辑/etc/default/nginx并添加了以下行:

ULIMIT="-n 65535"

仍然显示相同的错误。无法弄清楚是什么限制了 nginx 工作连接数仅为 1024。你能指出我的问题吗?

我有 Debian 7 + nginx

答案1

worker_rlimit_nofile 65535;在主上下文中的 nginx.conf 中设置。

答案2

成为用户:

su - nginx

检查限制:

ulimit -Hn
ulimit -Sn

编辑文件系统允许您打开的文件数量:

vi /etc/sysctl.conf
fs.file-max = 70000

加载您的更改:

sysctl -p

看看是否有帮助。

相关内容