商用データベースに匹敵するWebシステム構築手法 8

HTTPキャッシュの効果

キャッシュの効果  前回では、クエリキャッシュと出力キャッシュのベンチマークを行いました。今回はHTTPキャッシュのベンチマークを測定します。HTTPキャッシュの効果   5KBのテキストデータを単純に出力し、abコマンドで Suiqd+Apache、Apache、Apache+PHP、Apach

大垣 靖男

2005年5月16日 20:00

キャッシュの効果

  前回では、クエリキャッシュと出力キャッシュのベンチマークを行いました。今回はHTTPキャッシュのベンチマークを測定します。

HTTPキャッシュの効果

   5KBのテキストデータを単純に出力し、abコマンドで Suiqd+Apache、Apache、Apache+PHP、Apache+PHP+PostgreSQL、 Squid+Apache+PHP+PostgreSQLの組み合わせで計測を行いました。Squidを利用したベンチマークが、HTTPキャッシュを利 用した場合の性能、Apache+PHPのベンチマークが、出力キャッシュを利用した場合に相当します。ベンチマークの環境は、図25のとおりです。

HTTPキャッシュベンチマーク環境
図25:HTTPキャッシュベンチマーク環境

 

   なお、Squid、Apache、PHP、PostgreSQLはすべて同じPCにインストールしました。Squidは、HTTPアクセラレータ モードに設定した8888番ポートでリクエストを受け付け、ローカルホストの80ポートのApacheに接続しています。使用したファイルおよびPHPス クリプトは、リスト12のとおりです。

リスト12:ベンチマーク測定用のファイルおよびスクリプト
● Apache

5KB分のテキストが保存されているファイル(data.txt)を使用。

● Apache+PHP

 

header('Cache-Control: public, max-age=3600');
readfile('data.txt'); // data.txtファイルは5KBのデータを持つ
?>

● Apache+PHP+PostgreSQL

 

header('Cache-Control: public, max-age=3600');
$conn = pg_pconnect('host=localhost user=yohgaki');
$res = pg_query('SELECT * FROM simple_bench'); // 1行のみテーブル
$row = pg_fetch_assoc($res);
echo $row['var']; // 5KBのデータ
?>

 

この記事をシェアしてください

人気記事トップ10

人気記事ランキングをもっと見る