Como definir um limite global de nofile para evitar o erro de "muitos arquivos abertos"?

Eu tenho um serviço websocket. é strage que tem erro: "muitos arquivos abertos", mas eu configurei o sistema configure:

/etc/security/limits.conf
*               soft    nofile          65000
*               hard    nofile          65000

/etc/sysctl.conf
net.ipv4.ip_local_port_range = 1024 65000

ulimit -n
//output 6500

Então, eu acho que o meu sistema configurar está certo.

Meu serviço é gerenciado pelo supervisor, é possível limitar o supervisor?

verifique o início do processo pelo supervisor:

cat /proc/815/limits
Max open files            1024                 4096                 files 

verifique o início manual do processo:

cat /proc/900/limits
Max open files            65000                 65000                 files 

O motivo é usado para o supervisor gerenciar serviços. se eu reiniciar o supervisor e reiniciar o processo filho, está "max open files" ok (65000), mas errado (1024) quando o supervisor de reinicialização do sistema é iniciado automaticamente.

Pode haver um nível de inicialização do supervisor muito alto e a configuração do sistema não funciona quando o supervisor é iniciado?

editar:

sistema: ubuntu 12.04 64bit

Não é um problema do supervisor, todos os processos de inicialização automática após a reinicialização do sistema não usam o sistema configurado (máximo de arquivos abertos = 1024), mas a reinicialização está ok.

atualizar

Talvez o problema seja:

https://bugs.launchpad.net/ubuntu/+source/upstart/+bug/938669http://bryanmarty.com/blog/2012/02/10/setting-nofile-limit-upstart/Aumentar o máximo de arquivos abertos para Ubuntu / Upstart (initctl)

Agora, a pergunta é: como definir um limite de nofile global, porque eu não quero definir o limite de nofile em todos os scripts iniciais necessários.

questionAnswers(8)

yourAnswerToTheQuestion