キャッシュの効果
前回では、クエリキャッシュと出力キャッシュのベンチマークを行いました。今回は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のデータ
?>
バックナンバー
この記事の筆者
University of Denver卒。同校にてコンピュータサイエンスとビジネスを学ぶ。株式会社シーエーシーを経て、エレクトロニック・サービス・イニシアチブ有限会社を設立。Linuxはバージョン0.9xの黎明期から利用してるが、オープンソースシステム開発やコミュニティへの参加はエレクトロニック・サービス・イニシアチブ設立後から。PHPプロジェクトのPostgreSQLモジュールのメンテナ、日本PostgreSQLユーザ会の四国地域での活動等を担当している。
筆者の人気記事
Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。