勉強したことのメモ

webプログラマ見習いが勉強したことのメモ。

apacheのprefork設定とKeepAlive設定

   

WordPressを設置しているサーバーが、ここのところ連日でピークタイム時にダウンしていた。ちょっと前からPVが大幅に増えていたのでその影響だと考えられ、apacheの設定で対応できるんじゃないかと思った。以下に対応内容と調べたことのメモ。

 

サーバースペック

サーバーのスペックとApacheのバージョンは以下の通り。

 

httpd.confの書き換え

httpd.confのpreforkとKeepAlive設定を以下の通り変更することで改善された。

 

prefork設定

preforkの値はMaxRequestsPerChild以外、同じにするのが良いらしい。同じ値するとして、その値を求めるには「サーバーのメモリ量 > httpd1つあたりの値 * MaxClientsの値 + 他プロセスの値」にするとのこと。

http1つあたりが大体20~30MBぐらいなので、最初は余裕を見て30MBとする。他プロセスについてはわからないけど、とりあえずは4分の1にあたる500MB残すとなるとMaxClientsは50程度になるかと。

この設定だけで様子を見たところ、Googleアナリティクスにあるリアルタイムのアクティブユーザー数で200人ほどまでは、ロードアベレージが2前後で耐えられていた。ただ、200人を少し超えたところでロードアベレージが4ほどまで上がってきた。

 

KeepAlive設定

ピークタイム以外でKeepAliveをOffにしてみたところ、体感だけどページの表示速度が遅くなったように感じられた。なので、KeepAliveはOnのままKeepAliveTimeoutを8から2に減らし、prefork設定をした上で様子を見たけど上記の通りロードアベレージが4まで上がった。

数分待ってみたがロードアベレージが下がらなかったので、KeepAliveをOffにしたところ1~2あたりまで下がった。

 

参考

http://blog.nomadscafe.jp/2010/09/apachestartservers-minmaxspareservers-maxclients.html

http://blog.nikuniku.me/entry/%3Fp%3D679_1

https://qiita.com/kou/items/acb3dcf1dcb428d7a3ec

 - サーバー

  関連記事

vps-hosting
CentOS6でSFTP接続する

VSPでFTP接続からSFTP接続に移行したかった。以下に方法をメモ。 &nbs ...

images
URLを入力するだけでサーバーの負荷テストが出来る「loadimpact」が便利

URLを入力するだけでサーバーの負荷テストが出来る「loadimpact」が便利 ...

images
VPSのメモリ2GBでどのぐらいのPVに耐えられるのか?

VPSを分からないなりに勉強しているんだけど、実際どのぐらいのPVに耐えられるん ...

images
PHPのエラーログの場所が設定されていない場合

php.iniでエラーログを取るようにはなっているけど、 ログファイルの場所が設 ...

images
apacheのアクセスログをリアルタイムで監視する

そういえば業務中に上司がアクセスログを リアルタイムで監視する時があるなと思った ...

images
ファイル移動のコマンド(mv)

さくらvpsでファイルの移動を行いたかった。 mv 移動したいファイル 移動した ...

vps-hosting
久しぶりにVPSでサーバー構築して詰まった点

DTIのVPSで久しぶりに初期化→再構築する機会があった。その際に詰まった部分の ...

images
ルートとディレクトリ

イマイチ分かっていなかったのでメモ。 ■ルートディレクトリ ツリー型ディレクトリ ...

images
CentOSでPHPを5.5から5.3にバージョンダウンする方法

事情があってVPSに入れているPHPを5.5系から5.3系にバージョンダウンした ...

images
さくらvpsでサブドメインを割り当てた際のメモ

sshで繋いで下記設定ファイルの下のほうに追記。 /etc/httpd/conf ...