PHP: PHP (Hypertext Preprocessor) は、サポート対象の 3 つの API (CGI、NSAPI、および FastCGI) のいずれかを使用することで、Sun Java System Web Server で使用できます。PHP は、PHP グループから入手可能なページスクリプト言語です。PHP グループは、サポート対象の 3 つの API のいずれかを使用して PHP ソフトウェアを設定する方法を Web サイト (http://www.php.net) で詳細に説明しています。
CGI API は、使用できる中ではもっとも安定したインタフェースですが、CGI に固有のパフォーマンスの制限を受けます。
NSAPI は、Sun Java System Web Server のネイティブ API を利用し、Web Server のメモリー内で PHP ソフトウェアを実行します。この設定により最高のパフォーマンスが提供されますが、スレッドセーフでない PHP モジュールが使用されるとサーバーがクラッシュする危険があります。
FastCGI インタフェースは、パフォーマンスと安定性を両立させます。FastCGI は、PHP ソフトウェアを Web Server のメモリー外で実行しつつ、要求を処理したあとも実行したままにすることを可能にします。不安定な PHP モジュールが使用されても、Web Server がクラッシュすることはありません。このため、PHP ソフトウェアでは FastCGI インタフェースを使用してください。
FastCGI インタフェースは、http://www.sun.com/download/products.xml?id=42d693c3 から入手可能な FastCGI アドオンをインストールすると、Web Server でサポートされます。
PHP ソフトウェアは、FastCGI プロセスとして実行した場合、PHP プロセスのライフサイクルを制御するために 2 つの環境変数を使用します。
PHP_FCGI_CHILDREN は、要求に対する応答として作成される PHP プロセスの数を決定します。
PHP_FCGI_MAX_REQUESTS は、PHP プロセス自体を終了して新しい PHP プロセスに置き換えられるまでに応答できる要求の数を決定します。
PHP_FCGI_CHILDREN を使用する代わりに FastCGI アドオンの設定パラメータ min-procs で PHP プロセスの最小数を制御することをお勧めします。