私はいくつかのデータベースクエリと多くの訪問者を持つサイトを持っているので、id キャッシュを考えました。
これはphpなので、ob_start()などを使って内容を取得し、ファイルを保存します。これは速いです。
0.05秒かかります。(キャッシュする必要さえありません)。
問題はファイルのロードにあります。
私がこれを行う場合:
readfile($cache_file)
0.43秒かかります。
私が行った場合
$c= fread(fopen($cache_file,'r',filesize($cache_file))
(つまり、ファイルを読み取り、出力しないでください) 0.05 よりも高速です。
もし私がそうしたら
echo $c
再び 0.4 秒かかります。
これをスピードアップする方法はありますか?基本的に、キャッシュ全体を一度にエコーする(または readfile が行う)と、その場でページを生成するよりも時間がかかるようです。
psキャッシュファイルのファイルサイズは約41キロバイトです。問題が大きなファイルへのロードであることを確認するために完全にテストしました。readfile($smallfile) を実行します。速いです。キャッシュファイルが大きいときにキャッシュファイルを出力するときだけ遅い
編集 - また、このスクリプトを別のサイトで使用しており、キャッシュ ファイル (かなり基本的なページ) がはるかに小さく、高速化されています。ページに大量のデータがあるため、大きなキャッシュ ファイルが必要なので、40kb から取得することはできません。