Restful-caching

提供:Dev Guides
移動先:案内検索

RESTful Webサービス-キャッシュ

キャッシュとは、クライアントがサーバーレスポンスをクライアント自体に保存することを指します。これにより、クライアントは同じリソースに対してサーバーリクエストを何度も繰り返す必要がなくなります。 サーバー応答には、クライアントが一定期間応答をキャッシュするか、サーバー応答をキャッシュしないように、キャッシュの実行方法に関する情報が必要です。

以下は、クライアントのキャッシュを構成するためにサーバー応答が持つことができるヘッダーです-

Sr.No. Header & Description
1

Date

リソースが作成されたときの日付と時刻。

2

Last Modified

リソースが最後に変更された日時。

3

Cache-Control

キャッシングを制御するプライマリヘッダー。

4

Expires

キャッシュの有効期限。

5

Age

リソースがサーバーからフェッチされてからの秒単位の期間。

Cache-Controlヘッダー

以下は、Cache-Controlヘッダーの詳細です-

Sr.No. Directive & Description
1

Public

リソースがコンポーネントによってキャッシュ可能であることを示します。

2

Private

リソースはクライアントとサーバーによってのみキャッシュ可能であり、仲介者はリソースをキャッシュできないことを示します。

3

no-cache/no-store

リソースがキャッシュ可能でないことを示します。

4

max-age

キャッシュが最大有効期間(秒)まで有効であることを示します。 この後、クライアントは別の要求を行う必要があります。

5

must-revalidate

max-ageが経過した場合にリソースを再検証するためのサーバーへの指示。

ベストプラクティス

  • 有効期限が2〜3日の画像、CSS、JavaScriptなどの静的コンテンツを常にキャッシュ可能にします。
  • 有効期限を高くしすぎないでください。
  • 動的コンテンツは、数時間だけキャッシュする必要があります。

Cache-Controlのベストプラクティス