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
関連記事
nginx worker_processesとworker_cpu_affinityの設定値・方法

数年前からnginxの話題でWEBシステム開発が盛り上がっていました。 そして、社内でもnginxを利用した開発をしているスタッフが多い中 未だにapacheでのWEBサーバー構築しか経験が無い自分としては このタイミン […]
WordPress 無限ループのリダイレクトエラー・不具合を解決する方法

前までは普通に使えていたWordpressがある時から、無限ループでリダイレクトエラーになってしまう。 (サーバーを変更したのが原因?) 管理画面にログインした状態だとリダイレクトエラーになっていました。 ログインしてい […]
nginxの勉強はlocationディレクティブの設定がキモ? 前方一致 正規表現

みなさんこんにちは 最近apacheからnginxに移行しちゃおうとポチポチ遊んでいる武智建樹です。 (今日からはじめのフレーズを入れてみました。。。) nginxの設定を他のサイトを参考にしながら、いろいろ試し利用して […]
Nginx fastcgi_cacheのキャッシュを利用時に空のページが表示されるエラー

NginxでfastcgiをキャッシュしWordpressやその他のシステムを高速化していました。 サーバー負荷も抑えられ、ページも高速に表示され満足していたのですが 時々ページが空(真っ白)で表示されることがありました […]
簡単にapacheからnginxへ移行するツール htaccess to nginx converter

最近、個人的にWEBサーバーのnginxに挑戦中です。 3、4年前あたりから軽量なWEBサーバーnginxが話題になっていて、ついに先日やっとnginxへ挑戦した次第です。 周りの話題についていけないので・・・やっぱり自 […]
今流行のnginx proxy_cache apacheにサイトを移行してみました

今年も残すところあと数日になってきました。 私の中ではもう何日も前からカウントダウンが始まっています。。。 来年に向けて何か整理(頭の中を掃除)していこうと思い 今回、当ブログを今流行のnginx(スタッフが作ったマニュ […]