ServersMan@VPSのApacheの設定は安全志向
ServersMan@VPSのスタンダードプランをCentOS 6.3に設定して(仕事で6.3使うことが多くなったのもある)、いちから入れ直して設定を見直しているんだけれども、Apacheの設定が通常のものと違っていたのでメモ。
要は、Apacheのプロセスが生成されまくってサーバ死亡、ていうことがなくなっています。特に、PHPを取り込んで太り気味のApacheでも10プロセスしか起動しないならサーバは落ちまい。
*** httpd.conf.orig 2012-02-07 23:47:02.000000000 +0900 --- httpd.conf 2012-06-09 10:02:38.000000000 +0900 *************** *** 100,110 **** # MaxClients: maximum number of server processes allowed to start # MaxRequestsPerChild: maximum number of requests a server process serves <IfModule prefork.c> ! StartServers 8 ! MinSpareServers 5 ! MaxSpareServers 20 ! ServerLimit 256 ! MaxClients 256 MaxRequestsPerChild 4000 </IfModule> --- 100,110 ---- # MaxClients: maximum number of server processes allowed to start # MaxRequestsPerChild: maximum number of requests a server process serves <IfModule prefork.c> ! StartServers 1 ! MinSpareServers 1 ! MaxSpareServers 5 ! ServerLimit 10 ! MaxClients 10 MaxRequestsPerChild 4000 </IfModule> *************** *** 116,125 **** # ThreadsPerChild: constant number of worker threads in each server process # MaxRequestsPerChild: maximum number of requests a server process serves <IfModule worker.c> ! StartServers 4 ! MaxClients 300 ! MinSpareThreads 25 ! MaxSpareThreads 75 ThreadsPerChild 25 MaxRequestsPerChild 0 </IfModule> --- 116,125 ---- # ThreadsPerChild: constant number of worker threads in each server process # MaxRequestsPerChild: maximum number of requests a server process serves <IfModule worker.c> ! StartServers 1 ! MaxClients 10 ! MinSpareThreads 1 ! MaxSpareThreads 4 ThreadsPerChild 25 MaxRequestsPerChild 0 </IfModule>
他社のVPSだと、preforkで256設定のままのVPSをよく見かけるけれども、PHP使ったらRAM足りなくなってスワップまで食い尽くしてOOM Killer発動してサーバ死ぬよね。
WebArenaのv2でMaxClientが128で引き渡ししているタイプも見たことがあるけれども、PHPを組み込まなければセーフ的な設定で、組み込むとやっぱり死ぬ。
そういう意味では、ServersMan@VPSの設定は初心者向けというか、下手こいても止まらない安全志向の設定なのだなあと思いました。