12月 262011
 

 blog を WordPress に移行して数日、一部問題はあるものの概ね動作しているようで安心している。WodPress は PHP で動作するが、PHP 環境は Apache + mod_php という組み合わせが多いと思う。このパターンは動作事例が多いし安定もしているが、PHP のアプリケーションサーバとして Apache を使うためにどうしても Apache 1プロセス当たりのメモリ使用量が増えてしまう。その結果、画像を返すだけのリクエストだとしても、占有メモリが肥大化した Apache で処理することになる。最近の Linux の fork は実際にはコピーオンライトなので書き込みのないメモリ領域は共有化しているとはいえ、効率が悪いのは否めない。

 そこで、Apache Tomcat のように PHP のみを別プロセスとして動作させる FastCGI が有効になる。これまでは spawn-fcgi で回すのがよくあるパターンだったが、PHP 5.4.0RC2 から PHP-FPM (A simple and robust FastCGI Process Manager for PHP) がマージされているのでこれを使ってみた。ディストリビューションは例によって Gentoo Linux になる。今回はウェブサーバとして nginx を使っているが、Apache で動作させる場合は mod_fastcgi を使えばよい。

Continue reading »