# 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 ベースの設定ファイル