nginxのパフォーマンスと互角になる?Apacheをworkerでチューニングする
標準のapacheのpreforkはプロセスで動作するのに対して、nginxと同じスレッドで動作するworkerでは
結局同じ程度のパフォーマンスになるのかな?
実際に自分の目で確かめるために、Apacheをworkerで動作するように挑戦してみました。
phpをmod_phpなどで動作させている場合は、メモリーリークなど動作が不安定になると
いろいろなページで紹介されています。
Apacheをpreforkからworkerに変更するのは、CentOSの場合コメントを外すだけの簡単設定です。
vi /etc/sysconfig/httpd
※コメントを外す
HTTPD=/usr/sbin/httpd.worker
※apacheの再起動
service httpd restart
※動作確認
apachectl -V | grep 'Server MPM'
workerのメリットとしてのメモリー使用量が減った?
後は、mod_phpの動作が不安定になるのを抑える対策として
mod_fastcgiを導入すれば良いと思います。
Apacheのバージョンが2.4系(2.3以上?)の場合は、proxy設定でphp-fpmとの連携ができそうですね。
mod_fastcgiのインストール
yum install mod_fastcgi --enablerepo=rpmforge
mod_fastcgiの設定
mkdir /path/htdocs/fcgi-bin
cp /usr/bin/php-cgi /path/htdocs/fcgi-bin
chown -R apache: /path/htdocs/fcgi-bin
chmod -R 755 /path/htdocs/fcgi-bin
この利用方法はあまり好きでは無いんですよね。PHPのバージョンアップ時の保守性が低下するので。
面倒な設定を省略したい場合は、mod_fastcgiを導入しなくても
workerに設定した時点で、対応されていますが(libphp5-zts.so)・・・
LoadModule php5_module modules/libphp5.so
LoadModule php5_module modules/libphp5-zts.so
関連記事
PHPだけでは無い!Perl CGIも実行ユーザーがWEBサーバーのユーザーだった件

知り合いのデザイン会社から、サーバーを移行したいと友達依頼(無償)で気軽に受けてしまった。 以前はどこかのシステム会社に依頼を指定たらしく、それがよくある話のアレコレで どうにも行かなくなったので、今回古くなったOSとと […]
WordPress 3.8.1 自動アップデートで指定したプラグインを除外する方法は?

昨日Wordpressの自動アップデート設定を正しく行ったところ 無事に自動更新されていました。 いいですね~便利ですね~ これで、わざわざ更新画面を表示して更新ボタンを押さなくても良くなりました。 バージョンが古いもの […]
WordPressの新しいバージョンでいますぐ更新時に注意して確認しておくこと

昨日Wordpressのバージョンが3.9へアップデートされました。 いまのところ、導入済みのプラグインとの不具合は無く快適に動作している感じです。 3.9のバージョンアップの際に、気になっていたので 注意深く意識してい […]
簡単にapacheからnginxへ移行するツール htaccess to nginx converter

最近、個人的にWEBサーバーのnginxに挑戦中です。 3、4年前あたりから軽量なWEBサーバーnginxが話題になっていて、ついに先日やっとnginxへ挑戦した次第です。 周りの話題についていけないので・・・やっぱり自 […]
Nginx fastcgi_cacheのキャッシュを利用時に空のページが表示されるエラー

NginxでfastcgiをキャッシュしWordpressやその他のシステムを高速化していました。 サーバー負荷も抑えられ、ページも高速に表示され満足していたのですが 時々ページが空(真っ白)で表示されることがありました […]
サーバーリソースを浪費するbotアクセスを遮断すればサイト表示が早くなる

ブログやCSMなどサイト運営を長くしていると、ページ数が増えサイトのボリュームがアップします。 そして、検索エンジンから各ページへのアクセスが徐々に増え、アクセス数の推移を見るのが楽しくなりますよね。 が、アクセスが増え […]