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
関連記事
WordPressはマルチサイト(ドメイン)よりシングルサイトの方が早くて高速?
Wordpressは、バージョン3からマルチサイトに対応し、管理画面からサイトを新規登録するだけで 新しいWordpressを構築することが可能になりました。 それまでは、FTPなりでWordpress一式をアップロード […]
Youtubeで再生される動画をデフォルトで高画質に設定 Auto HD For YouTube
製品などの説明を探している際に 最近良くYoutube動画へリンクされている場合があります。 検索エンジンでページを検索した場合、いくつも関連するページが表示されますよね。 されと同じでYoutube内で検索すると関連す […]
nginx worker_processesとworker_cpu_affinityの設定値・方法
数年前からnginxの話題でWEBシステム開発が盛り上がっていました。 そして、社内でもnginxを利用した開発をしているスタッフが多い中 未だにapacheでのWEBサーバー構築しか経験が無い自分としては このタイミン […]
サーバーリソースを浪費するbotアクセスを遮断すればサイト表示が早くなる
ブログやCSMなどサイト運営を長くしていると、ページ数が増えサイトのボリュームがアップします。 そして、検索エンジンから各ページへのアクセスが徐々に増え、アクセス数の推移を見るのが楽しくなりますよね。 が、アクセスが増え […]
今流行のnginx proxy_cache apacheにサイトを移行してみました
今年も残すところあと数日になってきました。 私の中ではもう何日も前からカウントダウンが始まっています。。。 来年に向けて何か整理(頭の中を掃除)していこうと思い 今回、当ブログを今流行のnginx(スタッフが作ったマニュ […]
簡単にapacheからnginxへ移行するツール htaccess to nginx converter
最近、個人的にWEBサーバーのnginxに挑戦中です。 3、4年前あたりから軽量なWEBサーバーnginxが話題になっていて、ついに先日やっとnginxへ挑戦した次第です。 周りの話題についていけないので・・・やっぱり自 […]