FastCGI
リクエスト毎に新しいプロセスを作成する代わりに、FastCGI は永続的なプロセスを使用して一連のリクエストを処理する。これらのプロセスは、WebサーバではなくFastCGI サーバが所有している。
受信リクエストを処理するために、Webサーバは環境変数情報とページリクエストを、UNIXドメインソケット、名前付きパイプ、または伝送制御プロトコル(TCP)接続のいずれかを介してFastCGI プロセスに送信する。応答は同じ接続を介してプロセスからWebサーバに返され、Webサーバはその応答をエンドユーザに配信する。応答の最後に接続が閉じられる可能性があるが、WebサーバとFastCGI サービスプロセスの両方が存続する。
個々のFastCGI プロセスは、その存続期間中に多くの要求を処理できるため、要求毎のプロセスの作成と終了のオーバーヘッドを回避できる。複数の要求を同時に処理するには、いくつかの方法がある。