私はしばらくの間、自分のブログ システムを実行してきましたが、ほとんどのページで、ページにアクセスするたびに、いくつか (5 ~ 10) の同じデータベース クエリを実行する必要があることに気付きました。
現在、データをxmlファイルにキャッシュすることを考えています。これを行う私の計画は次のとおりです。
--- ブログ投稿・編集時、MySQLデータベースへのデータ挿入・更新、xmlファイル生成
<?xml version="1.0" encoding="UTF-8"?>
<data>
<id>32</id>
<title>caching data with xml</title>
<date>2012-10-01</date>
<content><![CDATA[<p>blah...blah...blah...</p>]]></content>
</data>
--- ページが表示されたら、最初にファイルの存在を確認し (念のため)、xml ファイルを解析してデータをフォーマット/出力します。
if(file_exists("path/to/blog/32.xml")) {
$data = simplexml_load_file("path/to/blog/32.xml");
echo '<h2'>.$data->title.'</h2>';
echo '<p'>.$data->date.'</p>';
echo $data->content;
}
else {
mysql_query(...);
}
これを行うことで、MySQL の作業を大幅に減らすことができますが、後で 100 人または 300 人の訪問者が同じページに同時にアクセスするなどの問題が発生するかどうかはわかりません。PHPはそれを処理できますか?この方法で正しくやっていますか?
情報やヒントを事前に感謝します。
ところで、私はまだこれらのテンプレートを使用することを考えていません。