Tente aumentar worker_rlimit_nofile e worker_connection, de qualquer forma, é bom ver o que está acontecendo no error_log. por exemplo:
worker_rlimit_nofile 65535;
events {
worker_connections 65535;
}
Eu tenho memória e cpu suficientes, mas o nginx mostra 503 erros em alto tráfego.
Aqui estão os usos da memória
total used free shared buffers cached
Mem: 3383 3370 12 0 37 3071
-/+ buffers/cache: 260 3122
Swap: 4094 0 4094
Além disso, os usos da CPU nunca excedem 20%
top - 13:31:10 up 43 days, 6:47, 3 users, load average: 0.16, 0.19, 0.22
Tasks: 95 total, 1 running, 92 sleeping, 2 stopped, 0 zombie
Cpu(s): 0.0%us, 0.0%sy, 0.0%ni, 96.7%id, 3.2%wa, 0.0%hi, 0.0%si, 0.2%st
Mem: 3464192k total, 3450844k used, 13348k free, 53248k buffers
Swap: 4192944k total, 100k used, 4192844k free, 3135820k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 15 0 10364 648 552 S 0.0 0.0 0:04.33 init
2 root RT -5 0 0 0 S 0.0 0.0 0:14.15 migration/0
3 root 34 19 0 0 0 S 0.0 0.0 0:00.05 ksoftirqd/0
4 root RT -5 0 0 0 S 0.0 0.0 0:00.00 watchdog/0
5 root 10 -5 0 0 0 S 0.0 0.0 0:01.10 events/0
Eu uso este código para ver as conexões ativas: netstat -an |grep :80 |wc -l
Tudo está bem quando mostra um número abaixo de 1500, mas quando ultrapassa 1500, os usuários recebem 503 erros.
Eu defini: worker_processes 2;
e worker_connections 2024;
Mas ainda está recebendo esse erro.
Por favor me ajude e sugira como corrigir isso. E deixe-me saber o que está causando esse erro. Eu estou usando o nginx 0.8.55
Obrigado.