コンテンツAPI(GET)のキャッシュはどのように利用されますか?
コンテンツAPI(GET)は、CloudFrontと呼ばれるCDNを経由して、レスポンスが行われます。
その際にキャッシュが存在する場合は、キャッシュを利用してレスポンスが行われます。そのため、高速なレスポンスの実現や、大量のリクエストへの対応が可能です。
キャッシュ作成のタイミングについて
APIへのリクエスト時に、
- キャッシュが存在していない場合
- コンテンツ内容に更新があった場合
にオリジンにアクセスし、キャッシュが作成されます。
キャッシュ利用される条件について
以下の条件が揃った際に、キャッシュが利用されます。
- 同一のURLへのリクエストである
- 同一のAPIキーを利用したリクエストである
- 同一の地域からリクエストである
- コンテンツが更新されていない
- キャッシュの有効期限が切れていない
- 一部のリクエストヘッダは、キャッシュキーとして利用されます。付与するリクエストヘッダによってはオリジンへのアクセスが発生する場合があります。
- キャッシュは1週間に約1回の頻度で、定期的にクリアされます。こちらの頻度については、増減する場合があります。
- キャッシュ条件は変更となる場合があります。
キャッシュが利用されているかの確認方法
HTTPレスポンスのヘッダ内の、「x-cache」という項目にて確認を行なうことが可能です。
- 値が「Hit from cloudfront」となっている
→ キャッシュを利用したレスポンス - 値が「Miss from cloudfront」となっている
→ オリジンからのレスポンス
となります。
レスポンスヘッダについては、以下のようなコマンドにて確認可能です。
curl -I "https://xxx.microcms.io/api/v1/endpoint" -H "X-MICROCMS-API-KEY: xxx"