Alibaba Cloud Content Delivery Network (CDN) が静的リソース配信を高速化する際、オリジンサーバーから、訪問者に最も近い CDNノードにリソースをロードします。 訪問者が静的リソースにアクセスすると、CDN はオリジンサーバーではなくCDNノードからリソースを取得します。 オリジンサーバーからのリソースの取得には時間がかかるため、これによりリソースの配信時間が短縮されます。

キャッシュされたオブジェクトの TTL を計算する方法

  • t = (Current time - Last-Modified) × 0.1
  • t = max(10, t)
  • t = min(t, 3600)

存続時間 (TTL) は t で表され、秒単位で測定されます。

デフォルトのキャッシュルール

  • オブジェクトの Last-Modified 値が 20140801 00:00:00 で、現在の時間が 20140801 00:01:00 の場合、t = (Current time - Last-Modified) × 0.1 = 6 秒になります。 計算ルールによると、最小値は 10 秒であるため、TTL は 10 秒です。
  • オブジェクトの Last-Modified 値が 20140801 00:00:00 で、現在時刻が 20140802 00:00:00 の場合、t = (Current time - Last-Modified) × 0.1 = 8,640 秒になります。 計算ルールによると、最大値は 3,600 秒であるため、TTL は 3,600 秒です。
  • オブジェクトの Last-Modified 値が 20140801 00:00:00 で、現在時刻が 20140801 00:10:00 の場合、 t = (Current time - Last-Modified) × 0.1 = 60 秒になります。 計算ルールによると、TTL は 60 秒です。
  • オリジンサーバーからの応答がLast-Modified ヘッダーは含まず、ETag ヘッダーを含んでいる場合、アクセスされたオブジェクトは、静的リソースである可能性が高くなります。 このオブジェクトのデフォルト TTL は、 dft_expires ディレクティブを使用して設定された最小値に設定されます。
  • オリジンサーバーからの応答がLast-Modified ヘッダーまたは ETag ヘッダーを含まない場合、アクセスされるオブジェクトは動的リソースです。 このオブジェクトのデフォルト TTL は、ゼロに設定されています。 オブジェクトは、要求されるたびにオリジンサーバーから取得されます。

Web サイト開発者および関連する IT エンジニアは、Web サイトのビジネスロジック、および Web サイトの静的および動的コンテンツに精通しています。 ファイルタイプとディレクトリに基づいて、コンソールで TTL 値を設定することを推奨します。 詳細については、「キャッシュ設定」をご参照ください。

参考資料

CDN は次のキャッシュ機能をサポートしています。
機能 説明
キャッシュ設定 指定したディレクトリ内、または指定したファイル拡張子を持つ静的リソースのキャッシュ有効期限ルールを設定できます。 各キャッシュ有効期限ルールでは、キャッシュされた静的リソースの TTL と優先度を設定できます。 これらのキャッシュ有効期限ルールに基づいて、CDN は指定された静的リソースを CDN ノードにキャッシュします。
HTTP コードの有効期限の設定 指定されたディレクトリ内、または指定されたファイル拡張子を持つリソースに対して返される HTTP ステータスコードの有効期限ルールを設定できます。
HTTP リクエストヘッダーの設定 HTTP 応答ヘッダーをカスタマイズできます。
404 ページのカスタマイズ 特定の HTTP または HTTPS ステータスコードのエラーページをカスタマイズできます。
書き換えルールの設定 302 リダイレクトを使用して、リクエスト URI を指定された URI にリダイレクトできます。