1(選択済み)または0(選択されていない)の16種類のフィルタオプションを持つフォームを使用する検索アプリケーションで作業しています。 JSONがAJAX経由でGETリクエストを使用して取得された結果。多くのパラメータに基づいてキャッシュする方法
クエリ文字列は、その後、次のようになります。
FILTER_1 = 0 & filter_2 = 1 ...省略... & filter_16 = 1 &ページ= 20
それぞれ、検索結果には、少なくとも2ページこれを持っていますユーザが閲覧することができる。
質問:入力パラメータに基づいて検索結果をキャッシュするにはどうすればよいですか?私の最初のアイデアは、リクエストパラメータをmd5にして、ファイル名としてハッシュを使用してキャッシュファイルを書き込むことでした。
新しいリクエストが来るたびに、キャッシュファイルを検索し、キャッシュファイルがある場合は、データベースにクエリを行い、行をjson結果に変換する代わりに、そのファイルのデータを使用します。
しかし、これは多くの検索オプションのために良い考えではないようです。かなり多くのキャッシュファイル(16 * 16 ???)があります。アプリケーションは少数のユーザーしか使用しないため、すべての可能な組み合わせがキャッシュされることはありません。各結果にはXページが含まれているため、そのページはそれぞれ独自のキャッシュファイル(16 * 16 * X)になります。
このようなアプリケーションのための良いキャッシング戦略は何でしょうか?キャッシュを実装することは急に可能ですか?