nginx uLimit 'worker_connections excede o limite de recurso de arquivo aberto: 1024'

11

Eu continuo recebendo este erro em nginx/error.log e isso me deixa louco:

8096 worker_connections exceed open file resource limit: 1024

Eu tentei tudo o que posso pensar e não consigo descobrir o que está limitando nginx aqui. Você pode dizer o que estou perdendo?

nginx.conf tem isso:

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

Eu mudei o Ulimit do meu sistema em security/limits.conf assim:

# 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

Ainda estava mostrando o erro. Por isso, também tentei editar /etc/default/nginx e adicionei esta linha:

ULIMIT="-n 65535"

Ainda está mostrando o mesmo erro. Não consigo descobrir o que está limitando a conexão do trabalhador nginx a apenas 1024. Você pode me apontar?

Eu tenho o Debian 7 + nginx

    
por Neel 30.10.2014 / 20:44

2 respostas

25

Defina worker_rlimit_nofile 65535; no nginx.conf no contexto principal.

    
por 30.10.2014 / 22:49
2

Torne-se o usuário:

su - nginx

Verifique os limites:

ulimit -Hn
ulimit -Sn

Edite o número de arquivos que o sistema de arquivos permitirá que você tenha aberto:

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

carregue suas alterações:

sysctl -p

Veja se isso ajuda.

    
por 30.10.2014 / 22:30