サーバがすごく重くなると思って調べてみたらapache2の設定が以下のようになっていた。(Ubuntu)
1 2 3 4 5 6 7 |
<IfModule mpm_prefork_module> StartServers 5 MinSpareServers 5 MaxSpareServers 10 MaxClients 150 MaxRequestsPerChild 0 </IfModule> |
MaxRequestsPerChildが0なので子プロセスはずっと常駐することになり、最大150個まで増え続けることになる。おかげでHDDのスワップまでいっぱいになっていた。
1 2 3 4 5 6 7 |
<IfModule mpm_prefork_module> StartServers 5 MinSpareServers 5 MaxSpareServers 10 MaxClients 20 MaxRequestsPerChild 100 </IfModule> |
とりあえずこうして様子見、MaxRequestsPerChildが100なので100のリクエストを処理したら子プロセスは終了し、最大20個までになるはず。