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

図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のデータ
?>
