機能概要
お客様のリソースコンテンツがEdgeOneエッジノードにキャッシュされた後、キャッシュ有効期間内に、ユーザーがこのリソースにアクセスする際、EdgeOneエッジノードが直接応答し、オリジンサーバーへのアクセスは発生しません。このとき、お客様のオリジンサーバーでリソースコンテンツが更新された場合、ユーザーが古いリソースファイルにアクセスし続けることを防ぐために、キャッシュを消去することで、すべてのエッジノード内にキャッシュされたリソースを手動で消去できます。キャッシュが消去された後、ユーザーがリソースにアクセスする際、EdgeOneはオリジンサーバーから最新のリソースを取得して応答します。
上限額の説明
異なる課金プランには異なる上限があります。詳細はプラン選択比較をご参照ください。 適用シーン
以下のシナリオでは、この機能を使用する必要がある場合があります:
コンテンツ更新:お客様がオリジンサーバーで一部のリソースを更新したが、EdgeOne上のキャッシュがまだ期限切れになっていない場合、クライアントユーザーに最新のコンテンツをすぐに表示させたいことがあります。
エラー修正:お客様のオリジンサーバー上の一部の誤ったコンテンツがEdgeOneにキャッシュされた場合、ビジネスリスクを回避するために、これらの誤ったキャッシュを直ちに消去し、EdgeOneが誤ったコンテンツを提供しないようにする必要があります。
テストとデバッグ:ウェブサイトの開発やデバッグを行う際、お客様はサイトのコンテンツを頻繁に変更およびテストする必要がある場合があります。最新の変更後のコンテンツが表示され、キャッシュされた古いバージョンが表示されないようにするために、キャッシュ消去機能を使用できます。
緊急時対応:攻撃を受けた場合や機密情報を公開した場合など、特定の緊急事態において、お客様は直ちにEdgeOneから関連コンテンツを削除する必要があります。
キャッシュポリシー調整:EdgeOneキャッシュポリシーを調整または最適化する際、新しいポリシーをすぐに有効にするために、既存のキャッシュを消去する必要がある場合があります。
サポートタイプ
EdgeOneのキャッシュ削除は、複数のタイプに基づいて削除することをサポートしています。詳細は以下の通りです:
|
URL | URLに一致するノードキャッシュリソースです。例えば、https://www.example.com/path/foo.jpgです。 |
ディレクトリ | ディレクトリに一致するノードキャッシュリソースです。例えば、https://www.example.com/path/です。 |
Hostname | Hostnameに一致するノードキャッシュリソースです。例えば、www.example.comです。 *.test.com形式のURLの送信はサポートされていません。つまり、ドメイン名にワイルドカードを含めることはできず、対応するサブドメインを明記する必要があります。 |
Cache-Tag | Cache-Tag リフレッシュは、ノードキャッシュを迅速にリフレッシュするための方法です。特定のキャッシュタグに基づいて関連コンテンツをリフレッシュできます。ウェブサイトやアプリケーションでは、関連コンテンツにキャッシュタグを設定する必要があります。これは、オリジンサーバーの HTTP レスポンスヘッダーに「Cache-Tag」ヘッダーを追加することで実現できます。 キャッシュタグを設定すると、HTTP応答パケット内のCache-Tag応答ヘッダーのタグ値(tags)をマッチングしてキャッシュを削除できます。例えば、Cache-Tag: picです。この場合、リフレッシュを送信する際に、Tag(s)フィールドの入力欄にpicを入力すると、そのタグが付いたすべてのリソースをリフレッシュできます。 エンタープライズ版プランにのみ適用されます。 Cache-Tagに関する使用説明:
ヘッダーサイズの上限は6KBです。 複数のtagは「,」で区切ります。単一のtagは128文字を超えません。tag数の上限は1,000です。 tagは大文字と小文字を区別しません。つまり、Tag1とtag1は同じtagとして認識されます。 |
全キャッシュ | サイトのノード上の全キャッシュリソース。 現在のサイト(example.com)にワイルドカードドメインが接続されている場合、例えば*.foo.example.comの場合、そのワイルドカードドメイン配下のすべてのキャッシュに対して有効にすることはできません。各具体的なサブドメインのキャッシュ削除タスクを個別に送信する必要があります。 |
EdgeOneのキャッシュ削除は、直接削除と期限切れマークの2つの方式に分けられます。詳細は以下の通りです:
URLタイプおよびCache-Tagタイプはデフォルトで「直接削除」です。つまり、キャッシュコンテンツを直接削除します。ユーザーがリソースをリクエストすると、EdgeOneは直ちにオリジンサーバーにアクセスして最新のリソースを取得するため、短時間でオリジンサーバーへのリクエスト数が増加し、アクセラレーション効果が低下します。送信するコンテンツが多い場合、オリジンサーバーに大きな負荷がかかります。
その他のクリアタイプはデフォルトで「期限切れマーク」です。つまり、ノードキャッシュを直接削除するのではなく、キャッシュを期限切れとしてマークします。ノードがLast-ModifiedおよびEtagヘッダーをキャッシュしている場合、次回ユーザーがリクエストした際に、ノードはIf-None-MatchおよびIf-Modified-Sinceを携えてオリジンサーバーにアクセスし、リソースが更新されているかを検証します。304または200のいずれを応答するかはオリジンサーバーが決定します。一般的には以下の通りです:
更新がない場合、オリジンサーバーが304(Not Modified)を返すと、ノードは引き続きキャッシュを使用して応答し、オリジンサーバーへの帯域幅を効果的に節約できます。
更新がある場合、オリジンサーバーが200(OK)を返すと、ノードはオリジンサーバーから最新のリソースを取得し、キャッシュリソースと新リソースのLast-ModifiedおよびContent-Lengthを比較します。いずれかのヘッダー値が異なる場合、新しいリソースでノードの期限切れキャッシュを上書きします。
注意
EdgeOneノードはデフォルトでエンコード前とエンコード後のURLを区別してキャッシュします。そのため、更新時にはそれぞれ送信する必要があります。URLに特殊文字が含まれる場合、コンソールでURL更新を送信します:
https://example.com/d/default_avatar.png?x-oss-process=image/resize,w_600,1_800の場合、エンコード前URLに対応するキャッシュが更新されます。
https://example.com/d/default_avatar.png?x-oss-process=image%2Fresize%2Cw_600%2C1_800の場合、エンコード後URLに対応するキャッシュが更新されます。
キャッシュクリア履歴のクエリでは、最大で先頭の1万件のみが表示されます。より多くをクエリする必要がある場合は、クエリ範囲を狭めるか、リスト下部の「記録をエクスポート」をクリックすることをお勧めします。現在、エクスポートできる記録は最大50万件です。
操作手順
シーン1:入力内容によるキャッシュクリア
クリアが必要なコンテンツが少なく、入力ボックスに直接入力できる場合は、以下の手順を参照してください:
1. EdgeOneコンソールにログインし、左側のメニューバーでキャッシュを削除をクリックします。 2. キャッシュを削除ページで、対応するサイトを選択し、削除するリソースタイプを選択し、対応するリソース内容を入力し、削除を確定をクリックします。
3. 履歴タブに切り替えると、指定期間(直近1か月以内)およびクリアタイプの履歴を確認できます。
シーン2:ファイルアップロードによる一括インポートでキャッシュをクリア
クリアが必要なコンテンツが多い場合や、コンテンツを1つのファイルにまとめている場合は、ファイルをアップロードする方法を選択できます:
1. EdgeOneコンソールにログインし、左側のメニューバーでキャッシュを削除をクリックします。 2. キャッシュを削除ページで、対応するサイトを選択し、削除するリソースタイプを選択し、「ファイルをアップロード」方式を選択し、アップロード後に削除を確定をクリックします。
3. 履歴タブに切り替えると、指定期間(直近1か月以内)およびクリアタイプの履歴を確認できます。
関連参考