十分なメモリとCPUがありますが、nginxはトラフィックが多いときに503エラーを表示します。
これがメモリ使用量です
total used free shared buffers cached
Mem: 3383 3370 12 0 37 3071
-/+ buffers/cache: 260 3122
Swap: 4094 0 4094
また、CPU使用率が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
このコードを使用して、アクティブな接続を確認します:netstat -an |grep :80 |wc -l
これが1500未満の数値を示している場合はすべて問題ありませんが、1500を超えると、ユーザーは503エラーを受け取ります。
私は設定しました:worker_processes 2;
およびworker_connections 2024;
しかし、それでもこのエラーが発生します。
私を助けて、これを修正する方法を提案してください。そして、このエラーの原因を教えてください。私はnginx0.8.55を使用しています
ありがとうございました。
Worker_rlimit_nofileとworker_connectionsを増やしてみてください。とにかく、error_logで何が起こっているかを確認するのは良いことです。例えば:
worker_rlimit_nofile 65535;
events {
worker_connections 65535;
}