やっぱり更新するとロードアベレージがすごいのでー。
次に疑ったのはhttpdのプロセス数。100超えしているので。
とりあえず生存時間を短くすべく最大接続回数を制限してみる
/etc/httpd/conf/httpd.conf
MaxClients 100 MaxRequestsPerChild 400
↓
MaxClients 80 MaxRequestsPerChild 100
やっぱり更新するとロードアベレージがすごいのでー。
次に疑ったのはhttpdのプロセス数。100超えしているので。
とりあえず生存時間を短くすべく最大接続回数を制限してみる
/etc/httpd/conf/httpd.conf
MaxClients 100 MaxRequestsPerChild 400
↓
MaxClients 80 MaxRequestsPerChild 100
今までは、さくらの専用サーバエントリーのデフォルトというか、おそらくCeontOS4のデフォルト値のまま運用してきてたのですが。
ググルさんのクローラーがきたときとかはともかく、POST時にものすごくロードアベレージが上がるのでどうしようかと。
大名管理者的にはメモリとCPUの大きなメニューに変更するか、機能を分散配置するんだろうけど。さくらのVPSが逆引きできればいくつかのサーバに分散してもやすくなるんだけど、とりあえず現状では無理だし、どうしようかと。
で、とりあえず、今までデフォルトのまま運用していたapacheのパラメタを見直そうかと言うことで。
/etc/httpd/conf/httpd.conf
変更前:
KeepAlive Off
MaxKeepAliveRequests 100
KeepAliveTimeout 15
ServerLimit 256 MaxClients 256 MaxRequestsPerChild 4000
変更後:
KeepAlive On
MaxKeepAliveRequests 50
KeepAliveTimeout 10
ServerLimit 100 MaxClients 100 MaxRequestsPerChild 400
変更後の数字は適当。本当はちゃんと計算すべきな気もする。とりあえず運用して具合を見ようかと。