カテゴリ のブログがあるとしますA
。カテゴリA
には現在、100 ページで 1000 件の投稿があります。すべてのページはファイルにキャッシュされます (たとえば、Smarty テンプレート エンジンによってキャッシュされます)。投稿を追加していて、すぐに最初のページに表示したい。そのため、カテゴリ A の 100 ページすべてのキャッシュをクリアまたは無効にする必要があります。
ファイルが多すぎる (たとえば、数千ページ) 可能性があるため、キャッシュされたページを削除することはお勧めできません。リクエストに応じてキャッシュを無効にしてページを再生成する方がはるかに効率的な方法だと思います。
私の唯一の考えは、number of posts in category
キャッシュIDに追加することです。したがって、最初にカテゴリ内の投稿数を取得し (たとえば、memcache から)、この数によってキャッシュされたバージョンが有効かどうかを確認する必要があります。
すべてがうまくシンプルに見えます。しかし、新しい投稿を追加し、1 分後に別の (古い) 投稿を削除する状況を想像してみましょう。投稿数は 1000 のままで、一部のカテゴリ ページは古いままになります (この 1 分間に閲覧されなかった場合)。
解決策は何ですか?
PS: 私の英語で申し訳ありませんが、私の質問は、すでにそのような問題に直面している人々から明確になると思います.
ありがとうございました