Sun Java System Web Server 7.0 パフォーマンスのチューニング、サイジング、およびスケーリング

PHP のスケーラビリティーテスト

PHP は、Web ベースの動的コンテンツの作成に特化した、広く使用されているスクリプト言語です。その単純性、アクセシビリティー、使用可能なモジュールの多さ、容易に使用可能なアプリケーションの多さなどで、インターネット上での使用がもっとも急速に拡大しているスクリプト言語です。

Web Server のスケーラビリティーと PHP エンジンの汎用性が組み合わされて、動的コンテンツのための、パフォーマンスの高い柔軟な Web 配備プラットフォームが提供されます。これらのテストでは、PHP バージョン 5.1.6 を使用しました。

テストは、次の 2 つのモードで実行されました。

テストでは、phpinfo() クエリーを実行しました。目標は、サーバー上のコアを飽和させ、それぞれのスループットと応答時間を調べることでした。

FastCGI を使用した PHP のスケーラビリティー

次の表は、FastCGI プラグインテストのために使用した Web Server のチューニング設定を示しています。

表 6–12 FastCGI プラグインテストのためのチューニング設定

構成 

チューニング 

magnus.conf

Init fn="load-modules" shlib="path_to_web_server_plugin_dir /fastcgi/libfastcgi.so" funcs="responder_fastcgi" shlib_flags="(global|now)"

obj.conf

NameTrans fn="assign-name" from="/fcgi/*" name="fcgi.config"
<Object name="fcgi.config">
Service type="magnus-internal/ws-php" fn="responder-fastcgi"
app-path="path_to_php"
bind-path="localhost:9000"
app-env="PHP_FCGI_CHILDREN=128"
app-env="PHP_FCGI_MAX_REQUESTS=20000"
app-env="LD_LIBRARY_PATH=path_to_php_lib"
listen-queue=8192
req-retry=2
reuse-connection=1
connection-timeout=120
resp-timeout=60
restart-interval=0
</Object>

mime.types

type=magnus-internal/ws-php exts=php,php3,php4

次の表は、FastCGI テストを使用した PHP の結果を示しています。

表 6–13 FastCGI を使用した PHP のスケーラビリティー

コアの数 

平均スループット (ops/秒) 

平均応答時間 (ミリ秒) 

876 

114 

1706 

117 

2475 

121 

次の図は、FastCGI を使用した PHP のスケーラビリティーを示すグラフ表示です。

FastCGI を使用した PHP のスケーラビリティー - コアの数

NSAPI を使用した PHP のスケーラビリティー

次の表は、NSAPI テストを使用した PHP のための Web Server のチューニング設定を示しています。

表 6–14 PHP のための NSAPI プラグイン設定

magnus.conf

Init fn="load-modules" shlib="libphp5.so" funcs="php5_init,php5_close,php5_execute"

Init fn="php5_init" errorString="PHP Totally Blew Up!"

obj.conf

NameTrans fn="pfx2dir" from="/php-nsapi" dir=" path_to_php_script_dir" name="php-nsapi" <Object name="php-nsapi"> ObjectType fn="force-type" type="magnus-internal/x-httpd-php" Service fn=php5_execute </Object>

mime.types

type=magnus-internal/ws-php exts=php,php3,php4

次の表は、NSAPI テストを使用した PHP の結果を示しています。

表 6–15 NSAPI を使用した PHP のスケーラビリティー

コアの数 

平均スループット (ops/秒) 

平均応答時間 (ミリ秒) 

950 

105 

1846 

108 

2600 

115 

次の図は、NSAPI を使用した PHP のスケーラビリティーを示すグラフ表示です。

NSAPI を使用した PHP のスケーラビリティー - コアの数