注:このトピックは HTTP Large、HTTP Small、および Flashストリーミングには適用されますが、弊社ライブストリーミングには適用されません。
弊社エッジサーバーは、オリジンサーバーで提供されるキャッシュ指示に従ってコンテンツをキャッシュします。オリジンサーバーがキャッシュ命令を提供しない場合、7日間のTime To Live (TTL) が割り当てられます (Cache-Control: max-age=604800)。コンテンツはTTLの期限が切れるまで有効であるとみなされます。
一度コンテンツが POP 上でキャッシュされると、コンテンツが有効な限り、そのPOPの対象圏内からのそれ以降の全てのリクエストは、そのPOPから直接行われます。コンテンツのTTLの期限が切れると、そのPOPからのエッジサーバーがオリジンサーバーでコンテンツを再検証することがあります。コンテンツが変更されていない場合、オリジンサーバーのキャッシュ命令またはデフォルトの7日間のTTLを反映して、そのエッジサーバー上のコンテンツのTTLが更新されます。そうでない場合、コンテンツの新しいバージョンが取得され、エッジサーバーにキャッシュされます。
オリジンサーバーはレスポンスヘッダーによって、リクエストされたコンテンツにキャッシュ命令を提供します。
注:弊社CDNオリジンサーバー (CDNストレージ) はキャッシュ命令を提供しません。従って、デフォルトの7日間のTTLが、CDNストレージからリクエストされるすべてのコンテンツに割り当てられます。
再検証は、リクエストされたキャッシュコンテンツの新しいバージョンが存在するかどうかを判断するために、エッジサーバーがオリジンサーバーをチェックするプロセスです。リクエストされたコンテンツが変更されていないことをオリジンサーバーが示している場合、弊社エッジサーバーがキャッシュされたコンテンツをメディアプレイヤーに提供し、そのTTLを提供されたキャッシュ命令に従って更新します。
弊社エッジサーバーは、以下の場合のみ再検証を実行できます。
注:いずれかのレスポンスタグが見つからない場合、弊社エッジサーバーは無条件GETリクエストをお客様オリジンサーバーに行います。
ユーザーエージェントキャッシュはリクエストされたコンテンツがユーザーエージェント (ウェブブラウザなど) でキャッシュされるかどうか、およびその期間を決定します。デフォルトでは、このタイプのキャッシュは、いつユーザーエージェント (ブラウザなど) がキャッシュされたコンテンツをエッジサーバーで再検証するか決定します。
注:ウェブブラウザのキャッシュをクリアすると、ユーザーエージェントのキャッシュを上書きすることになる点に留意してください。
未完了ダウンロードの対処方法はプラットフォームによって異なります。
クライアントが該当するPOPですでにキャッシュされたコンテンツをリクエストした場合、エッジサーバーはオリジンサーバーから取得します。ヘッダーがキャッシュを菌糸しない限り、クライアントがHTTP範囲リクエストを行うか、ダウンロードを中止するかに関係なく、コンテンツ全体がエッジサーバーでキャッシュされます。コンテンツ全体を自動的に取得してキャッシュすることによって、そのコンテンツの今後のリクエストは、コンテンツが有効な間にご利用のオリジンサーバーから再度ダウンロードするために、そのPOP上のエッジサーバーを必要とはしません。この機能はオリジンサーバーに対する負荷を削減し、今後のリクエストをキャッシュから提供することを可能にします。これによって、顧客にコンテンツをより高速配信できます。
エッジサーバーがオリジンサーバーからコンテンツ全体を取得するまで、コンテンツはエッジサーバーにキャッシュされません。つまり、クライアントがダウンロードを中止するか、HTTP 範囲リクエストを行った場合に、コンテンツはエッジサーバーにはキャッシュされないということです。小さなコンテンツはオリジンサーバーから素早くダウンロードでき、HTTP範囲リクエストは一般的にHTTP Largeプラットフォームにホストすべきビデオコンテンツに対して実行されるため、これは問題とはなりません。
エッジサーバーがオリジンサーバーからコンテンツ全体を取得するまで、コンテンツはエッジサーバーにキャッシュされません。