ども。
「【ESXi】仮想マシンで謎のスワップイン/アウト多発orz」について調べていましたが、どうやらhttpdが原因っぽいorz
たまたまfeedlyで自分のRSSを登録していたら、ギュイーンとhttpdが立ち上がってきてheavy swapな状況に。
で、うちのhttpdって、そういえば昔プロセス数の起動とか変に調整した気が・・・。
今のprefork周り
<IfModule prefork.c>
StartServers 8
MinSpareServers 5
MaxSpareServers 256
ServerLimit 256
MaxClients 256
MaxRequestsPerChild 4000
</IfModule>
うーん。MaxSpareServersが結構多めですね。
とりあえず20に戻してみる。
やっぱりそれでもしんどいな。
下記の参考サイトで計算してみると、うちの環境だと20プロセスくらいが限界かな。
このくらいで様子見ですね。
<IfModule prefork.c>
StartServers 8
MinSpareServers 5
MaxSpareServers 20
ServerLimit 20
MaxClients 20
MaxRequestsPerChild 4000
</IfModule>
お、多量にアクセスかましてもswapまみれにならないね。
やっぱりサーバのスペックに対してhttpdプロセスを上げすぎだったのかな。
このへんのパフォーマンスチューニングは難しいですね。
あと、なんで今さらこんな問題が発生したのか?ESXiのSSD追加に関係があるのか!?
は、わかりません。。。もう何年もこの設定だったんだけどな。。。
参考:サーバが Swap を使いきってハングアップしたので、Apache のチューニングを実施しました
ではでは。またの機会に。