FastCGI Process Manager (FPM)
目次
FPM (FastCGI Process Manager) は PHP の FastCGI 実装のひとつで、
主に高負荷のサイトで有用な追加機能を用意しています。
以下のような機能があります。
-
緩やかな (graceful) 停止/起動 機能を含む高度なプロセス管理
-
異なる uid/gid/chroot/environment でのワーカーの開始、
異なるポートでのリスン、異なる php.ini の使用 (safe_mode の代替)
-
標準出力および標準エラー出力へのログ出力
-
opcode キャッシュが壊れた場合の緊急再起動
-
高速なアップロードのサポート
-
"slowlog" - 実行時間が非常に長いスクリプトの記録
(スクリプト名だけでなく、PHP バックトレースも記録します。バックトレースを取得するために、
ptrace やそれと同等の仕組みを使ってリモートプロセスの execute_data を読みます)
-
fastcgi_finish_request() - 何か時間のかかる処理 (動画の変換や統計情報の処理など) を継続しながら
リクエストを終了させてすべてのデータを出力させるための特殊な関数
-
動的/静的 な子プロセスの起動
-
基本的な SAPI の動作状況 (Apache の mod_status と同等)
-
php.ini ベースの設定ファイル