階層キャッシュ
階層キャッシュは、Cloudflareのネットワークのサイズを利用して、キャッシュヒット率を劇的に向上させることで、顧客のオリジンへのリクエストを削減します。世界中にデータセンターを持つCloudflareは、エンドユーザーに非常に近い場所でコンテンツをキャッシュします。しかし、コンテンツがキャッシュに存在しない場合、Cloudflareのエッジデータセンターはオリジンサーバーに連絡してキャッシュ可能なコンテンツを受け取る必要があります。
階層キャッシュは、Cloudflareのデータセンターを下位層と上位層の階層に分けることで機能します。コンテンツが下位層のデータセンター(一般的には訪問者に最も近いデータセンター)にキャッシュされていない場合、下位層は上位層にそのコンテンツがあるかどうかを確認する必要があります。上位層にコンテンツがない場合、オリジンにコンテンツを要求できるのは上位層のみです。この手法は、オリジンにコンテンツを要求できるデータセンターの数を制限することで帯域幅の効率を改善し、オリジンの負荷を軽減し、ウェブサイトの運営コストを削減します。
さらに、階層キャッシュはオリジンサーバーへの接続を集中させ、全てのネットワークロケーションからではなく、少数のデータセンターから接続されるようにします。これにより、サーバーリソースを使用するオープン接続の数が減少します。
階層キャッシュを有効にするには、階層キャッシュを有効にするを参照してください。
Cloudflareは、オリジンがCloudflareのデータセンターに接続する方法を制御できるように、キャッシュのトポロジーを選択することを許可します。これにより、キャッシュヒット率の向上、オリジン接続の削減、インターネットのレイテンシの低減が確保されます。以下に、利用可能なオプションの詳細を示します。
スマート階層キャッシュは、設定なしで、各ウェブサイトのオリジンに最も近い単一の上位層を動的に選択します。Cloudflareは、オリジンへの各リクエストのレイテンシデータを収集し、そのデータを使用して、任意の上位層データセンターがオリジンとどれだけ接続されているかを判断します。その結果、Cloudflareはオリジンに対して最も低いレイテンシを持つデータセンターを上位層として選択できます。
スマート階層キャッシュは、オリジンがアニキャスト ↗または地域のユニキャストネットワークの背後にある場合には機能しません。これは、オリジンの位置を把握できなくなるためです。その結果、最適な上位層を選択できず、レイテンシに悪影響を及ぼす可能性があります。
スマート階層キャッシュが有効な状態でオリジンのIP/DNSレコードを更新する際には注意が必要です。変更内容によっては、既存の割り当てられた上位層が変更され、新しい上位層でキャッシュが再充填される際にMISS率が増加する可能性があります。オリジンがアニキャストの背後にあるネットワークに切り替えられた場合、スマート階層キャッシュの効果が大幅に低下します。
アニキャストまたは地域のユニキャストを使用する必要があり、スマート階層キャッシュを使用したい場合は、アカウントチームに連絡してください。
一般的なグローバルトポロジーは、Cloudflareのグローバルデータセンター全てが上位層のネットワークとして機能することを許可します。このトポロジーは、遠方の訪問者に対する長いレイテンシを削減するのに役立つ可能性があります。
地域階層キャッシュは、グローバルなトラフィックフットプリントを持ち、下位層でキャッシュMISSが発生した際に、遠方のデータセンターにある上位層からコンテンツを取得することで、コンテンツをより迅速に提供したいエンタープライズ顧客のために、追加のキャッシングレイヤーを提供します。
地域キャッシュは、Cloudflareに対して、上位層が地域外にある可能性がある前に、下位層の近くにある地域ハブデータセンターを確認するよう指示します。これにより、1つまたは2つの地域に上位層があるスマートおよびカスタム階層キャッシュトポロジーのパフォーマンスが向上する可能性があります。地域階層キャッシュは、一般的なグローバル階層キャッシュのように、多くの地域に多くの上位層を持つ顧客には有益ではありません。
カスタム階層キャッシュは、Cloudflareのサポートチームと協力して、特定のニーズに合ったカスタムトポロジーを設定することを許可します。たとえば、近くに上位層がある場合や、ユニークなトラフィックパターンがある場合です。カスタムトポロジーが必要な場合は、CSMに連絡してください。
| Free | Pro | Business | Enterprise | |
|---|---|---|---|---|
Tiered Cache | Yes | Yes | Yes | Yes |
Smart Topology | Yes | Yes | Yes | Yes |
Generic Global Topology | No | No | No | Yes |
Regional Tiered Cache | No | No | No | Yes |
Custom Topology | No | No | No | Yes |
エンタープライズ顧客は、階層キャッシュを使用して帯域幅アライアンスの構成を上書きできます。他のすべてのユーザーに対しては、帯域幅アライアンスが優先されます。階層キャッシュは、帯域幅アライアンスが常に利用可能なオプションではないため、有効にする価値のあるオプションです。その場合、階層キャッシュの構成が使用されます。
ダッシュボードまたはAPIを介して階層キャッシュを有効にできます。
- Cloudflareダッシュボード ↗にログインし、ドメインを選択します。
- キャッシング > 階層キャッシュを選択します。
- 階層キャッシュから、ボタンを有効に切り替えます。
- 階層キャッシュのトポロジーでは、オリジンがCloudflareのデータセンターに接続する方法を制御できます。以下の選択肢があります:
- 上位層キャッシュ - スマートまたは一般的なグローバル階層キャッシュトポロジーのいずれかを選択できます。
- 中間層キャッシュ - スマートまたはカスタム階層キャッシュトポロジーを選択した場合、地域階層キャッシュを有効にできます。
- カスタム階層キャッシュ - Cloudflareのサポートチームと協力して、特定のニーズに合ったカスタムトポロジーを設定できます。
- 階層キャッシュを無効にする。

APIを介して階層キャッシュを有効にするには、以下のcURLの例を使用します:
curl --request PATCH \https://api.cloudflare.com/client/v4/zones/{zone_id}/argo/tiered_caching \--header "X-Auth-Email: <EMAIL>" \--header "X-Auth-Key: <API_KEY>" \--header 'Content-Type: application/json' \--data '{ "value": "on" }'APIを介して階層キャッシュのトポロジーを構成することもできます。たとえば:
スマート階層キャッシュを有効にする
curl --request PATCH \https://api.cloudflare.com/client/v4/zones/{zone_id}/cache/tiered_cache_smart_topology_enable \--header "X-Auth-Email: <EMAIL>" \--header "X-Auth-Key: <API_KEY>" \--header "Content-Type: application/json" \--data '{ "value": "on" }'地域階層キャッシュを有効にする
curl --request PATCH \https://api.cloudflare.com/client/v4/zones/{zone_id}/cache/regional_tiered_cache \--header "X-Auth-Email: <EMAIL>" \--header "X-Auth-Key: <API_KEY>" \--header 'Content-Type: application/json' \--data '{ "value": "on" }'階層キャッシュのAPIの例や構成オプションについては、APIドキュメントを参照してください。