CDNポイントオブプレゼンス (POP) のキャッシュヒット率を向上させるために、キャッシュルールを設定して有効期間を管理し、キャッシュルールの優先順位を指定できます。 リソースの有効期限が切れると、POPから自動的に削除され、オリジンサーバーからPOPに再キャッシュされます。 このトピックでは、POP上のリソースのキャッシュルールを設定する方法と、キャッシュされたリソースの有効期間を指定する方法について説明します。
概要
オリジンサーバーまたはPOPでキャッシュルールを設定しない場合、キャッシュされたリソースにはデフォルトの有効期間が使用されます。 デフォルトでは、キャッシュされたリソースは3,600秒間有効です。 ApsaraVideo VODにドメイン名を追加した後、デフォルトの有効期間を変更できます。 オリジントラフィックの量と発生した料金は、指定した有効期間によって異なります。 ビジネス要件に基づいて有効期間を指定することを推奨します。 有効期間が短いと、POPはリクエストをオリジンサーバーに頻繁にリダイレクトし、オリジンサーバーによって消費されるネットワークトラフィックの量が増加する可能性があります。
デフォルトのキャッシュルールは、キャッシュされたリソースの有効期間を指定します。 POPで構成するキャッシュルールには、オリジンサーバーのキャッシュ構成よりも高い優先度が割り当てられます。 オリジンサーバーでキャッシュ設定が指定されていない場合、ApsaraVideo VODコンソールでディレクトリまたはファイル名の拡張子に基づいてキャッシュルールを設定できます。
キャッシュされたファイルが頻繁にアクセスされない場合、期限切れになる前にPOPから削除することができます。
クライアント要求にIf-Matchヘッダーが含まれ、オリジンサーバーからの応答にETagヘッダーが含まれている場合、POPは、If-Matchヘッダーの値がETagヘッダーの値と同じである場合、要求されたリソースをクライアントに直接返します。 If-MatchヘッダーとETagヘッダーの値が異なる場合、POPは要求されたリソースの最新バージョンをオリジンサーバーから取得し、要求されたリソースをクライアントに返します。 このプロセス中に、POPにキャッシュされているリソースは、取得されたバージョンに置き換えられます。 POPは、キャッシュルールを適用する前に、If-Match値とETag値を比較します。
オリジンサーバー上のリソースファイルを更新する場合は、既存のリソースファイルと同じ名前を使用するのではなく、更新ファイルの名前にバージョン番号を含めることをお勧めします。 たとえば、2つの更新ファイルの名前としてimg-v1.0.jpgとimg-v2.1.jpgを指定できます。 次に、リソースファイルのキャッシュルールを設定できます。 次の図は、POPにキャッシュされるリソースのキャッシュルールを示しています。
手順
ApsaraVideo VODコンソールにログインします。
左側のナビゲーションウィンドウで、構成管理をクリックします。
[ドメイン名] ページで、設定するドメイン名を選択し、[アクション] 列の設定をクリックします。
表示されるページで、 をクリックします。 [キャッシュの有効性] タブで、[追加] をクリックします。
キャッシュルールを設定します。 TypeパラメーターをFolderまたはFile Extensionに設定します。
下表に、各パラメーターを説明します。
パラメーター
説明
タイプ
Folder: 指定されたディレクトリにキャッシュされるリソースを指定します。
File Extension: 指定されたファイル名拡張子を持つファイルにキャッシュされるリソースを指定します。
アドレス
[タイプ] を [フォルダ] に設定した場合、/directory/aaaなど、スラッシュ (/) で始まるディレクトリを入力します。 フルパスを入力できます。
[タイプ] を [ファイル拡張子] に設定した場合は、コンマ (,) を使用して複数のファイル名拡張子を区切ります。 例:
JPG,TXT
購入期間
キャッシュされたリソースの有効期間。 指定できる最大有効期間は3年です。 このパラメーターは、次のルールに基づいて設定することを推奨します。
頻繁に更新されない画像やアプリケーションパッケージなどの静的ファイルの有効期間を1か月以上指定します。
実際のワークロードに基づいて頻繁に更新されるJavaScriptやCSSファイルなどの静的ファイルの有効期間を指定します。
PHP、JSP、ASPファイルなどの動的ファイルのキャッシュを無効にするには、有効期間を0秒に指定します。
重量
キャッシュルールの優先度。
説明値は1から99までの整数でなければなりません。 より高い値は、より高い優先度を指定します。 より高い優先度が割り当てられたルールは、より低い優先度を有するルールよりも優先されます。
異なるルールに対して同じ優先順位を指定しないことを推奨します。 2つのルールに同じ優先度が割り当てられている場合、一方のルールがランダムに適用されます。
キャッシュルールが有効になると、他のルールは適用されません。
たとえば、
example.aliyun.com
に次のルールを設定した場合、ルール1は他のルールよりも優先的に適用されます。ルール1: TypeパラメーターはFile Extension、Addressパラメーターはjpg.png、Validity Periodパラメーターは1 Month、Weightパラメーターは90に設定されています。
ルール2: TypeパラメーターはFolderに設定され、Addressパラメーターは /www/dir/aaに設定され、有効期間パラメーターは1時間に設定され、Weightパラメーターは70に設定されます。
ルール3: TypeパラメーターはFolderに設定され、Addressパラメーターは /www/dir/aaa/example.phpに設定され、Validity Periodパラメーターは0秒に設定され、Weightパラメーターは80に設定されます。
[OK] をクリックします。