今日のウェブサイトは一般にデータベースを扱う必要があり、アクセス数が多いとデータベースに大きな負荷がかかります。一部の動的ページの実行結果をキャッシュし、次回アクセスする際にキャッシュに直接アクセスすることでデータベースへの負担を軽減できます。サーバーの応答速度も向上します。キャッシュされた結果は、外部メモリまたはメモリ内に保存できます。次回ページにアクセスしたときに、最後の結果が外部メモリ (メモリ) から直接読み取られます。
[php]
// まずキャッシュファイルを確認してください
If(file_exists("static.html")){
//キャッシュ時間は 3 分です
If(time()-filemtime("static.html")<60*3){
//静的ファイルの内容をクライアントに返します
$start_time = microtime();
Echo "静的ファイルから読み取られたデータを読み取りました:"。"& Lt; br/& gt;";
echo file_get_contents("static.html");
$ END_TIME = マイクロタイム ();
echo "静的ファイルの使用時間:".($end_time-$start_time);
出る
}
}
//最初のアクセスである場合、または最後のキャッシュ時間が 3 分を超えている場合は、データベースからデータを読み取ります
$host = "127.0.0.1";
$user = "ルート";
$パスワード = "123456";
// 記録開始時刻
$start_time = マイクロタイム();
Mysql_connect($host,$user,$password);
Mysql_select_db("mydb");
Mysql_query("セット名 utf8");
$sql = "ユーザーから名前、住所、メールアドレスを選択";
$resource = mysql_query($sql);
echo "データベースからデータを読み取りました:
";
Ob_start();//出力バッファをオープンします
echo "
// まずキャッシュファイルを確認してください
if(file_exists("static.html")){
//キャッシュ時間は3分です
if(time()-filemtime("static.html")<60*3){
//静的ファイルの内容をクライアントに返します
$start_time = microtime();
echo "静的ファイルからデータを読み取りました:"."
";
echo file_get_contents("static.html");
$end_time = microtime();
echo "静的ファイルの使用時間:".($end_time-$start_time);
終了します;
}
}
//初回アクセス、または最後のキャッシュ時間が 3 分を超える場合は、データベースからデータを読み取ります
$host = "127.0.0.1";
$user = "ルート";
$password = "123456";
// 開始時刻を記録します
$start_time = microtime();
mysql_connect($host,$user,$password);
mysql_select_db("mydb");
mysql_query("セット名 utf8");
$sql = "ユーザーから名前、住所、メールアドレスを選択";
$resource = mysql_query($sql);
echo "データベースからデータを読み取りました:
";
ob_start();//出力バッファをオープンする
echo "
名前 | 住所 | メール |
---|---|---|
".$userInfo['name']." | ".$userInfo['address']." | ".$userInfo['email']." |
データベースからデータを読み取る平均実行時間は: 約 0.0008041 秒です
キャッシュされたファイルを直接読み取る平均実行時間は: 0.0000475
データベースには 3 つのレコードしかなく、SQL も単純な単一テーブルのクエリであるため、テーブルに多数のレコードがある場合、または複数のテーブルのクエリの実行時間は長くなります。キャッシュによりデータベースのアクセス数が減り、応答時間が短縮されますが、キャッシュはすべてのページに適しているわけではありません。一部のページでは、アクセスするたびに表示内容が変更される場合がありますが、そのようなページでは明らかにキャッシュを使用できません。キャッシュは、めったに変更されないページに適しています。
名前 | 住所 | メール |
---|---|---|
".$userInfo['name']." | ".$userInfo['address']." | ".$userInfo['email']." |