Rails含め、多くの場合 FastCGIはCGIの延長線上にある使われ方をする。つまりWebサーバによってforkされ、リダイレクトされた標準入出力を使ってサービスを提供する。この時、プロセスのライフサイクルは Webサーバによって管理される。ただのCGIと違うところは、いちどforkされたプロセスが再利用されることである。これによって fork/execのオーバーヘッドが除かれ、結果として "Fast"が実現する。 一般的な FastCGIに対する認識はここまでに尽きることが多い。 だが、FastCGIはWebサーバと切り離され独立したプロセスとして立ち上げることも出来る。その場合、Webサーバとの通信には TCP又は UNIX Domain Socket(名前付きパイプ)が使われる。この通信のために FastCGIプロトコルというれっきとした通信プロトコルが存在する。 (実際には、W