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などの静的コンテンツを常にキャッシュ可能にします。
- 有効期限を高くしすぎないでください。
- 動的コンテンツは、数時間だけキャッシュする必要があります。