0

HTTP 応答を保存するために、Java を使用して非永続キャッシュ システムを作成しています。キャッシュされたコンテンツを保存するためにマップを使用できると思います。

私には不明なのは、要求された要素が存在するかどうかを確認する方法です。リクエストされたリソースのアドレスの検討を開始することは考えられると思いましたが、リクエストされたリソースとは別に、HTTP リクエストには Cookie も含まれている可能性があり、リクエストごとに異なる可能性があるため、十分ではないと思います...

キャッシュの管理方法を説明しているマニュアルを見つけようとしましたが、何も見つかりませんでした。

解決策を見つけるのを手伝ってもらえますか? ありがとう

4

1 に答える 1

0

では、ディスカッション中にまとめたすべての記録を書き留めておきましょう。

リクエストのフィンガープリントを生成し、それによってさらなるリクエストを識別します。フィンガープリントは、リクエスト中に存在するすべての情報に基づいて計算する必要があります。通常、このようなフィンガープリントのハッシュをマップ内のキーとして使用します。同一のリクエストへの応答は同一である必要があるため、キャッシュされた応答は、2 番目の同一の要求に対する正しい応答である必要があります。この場合、ID は、生成される同一のキーによって照合されます。

キャッシュ データの保存には、次の 2 つの設定が考えられます。

  • キャッシュはデータベースに保持されます。これにより、優れたパフォーマンスが約束され、ファインダープリントとコンテンツとともに追加情報を保存できます: 有効期限、追加ヘッダーなど。

  • ファイル システム ベース: 各応答はファイルに保存され、ファイルにはフィンガープリントで名前が付けられます。問題は、必要に応じて追加情報を保存する方法です。

于 2012-10-24T07:40:15.260 に答える