CDN(コンテンツ配信ネットワーク)のキャッシュヒット率は、CDNがエンドユーザーにコンテンツを配信する効率を測定する重要な指標です。これは、リクエストのうち、オリジンサーバーから取得されるのではなく、直接CDNキャッシュから提供されるリクエストの割合を示します。キャッシュヒット率は顧客体験に直接影響し、高いヒット率を確保することがCDNユーザーの中核的な提案となっています。本記事では、CDNキャッシュヒット率の概念、その影響要因、および最適化戦略について説明します。
典型的なCDNアクセスパスでは、通常の役割には以下が含まれます:ユーザー -> ブラウザ -> CDNノード -> オリジンサーバー。ブラウザとCDNノードの両方がリソースのキャッシュとして機能することができます。
ユーザーがブラウザにアドレスを入力すると、次のステップが発生します:
上記のアクセス戦略を通じて、後続のユーザーが同じリソースにアクセスする際に、オリジンサーバーにリクエストをせずにローカルまたはCDNノードのキャッシュに直接アクセスできるようになります。
CDNに精通しているなら、CDNの核心はノードキャッシュであり、地理的に十分な数のノードを展開することでキャッシングサービスを提供することを知っているでしょう。クライアントはエッジノードを介してキャッシュされたリソースに直接アクセスし、オリジンサーバーへの頻繁な訪問を避け、加速を達成します。
キャッシュ性能を測定するための主要な指標はキャッシュヒット率であり、これにはトラフィックヒット率とリクエストヒット率が含まれます。
これらの指標は、異なる次元からキャッシュヒットの状況を反映しています。キャッシュヒット率が高いほど、オリジンサーバーのネットワーク帯域幅の消費を減少させ、オリジンサーバーへの負荷を軽減し、ユーザーアクセスのレイテンシを減少させ、応答時間を短縮します。
CDNアクセスにおけるキャッシュ戦略は、主にHTTPヘッダーを介して実施されます。異なるヘッダーを適切に設定することで、CDNノードやブラウザのキャッシング動作を制御できます。
応答ヘッダー
ブラウザのデバッグモードを使用して、応答パケットをキャプチャし、上記のヘッダーの意味を説明します:
上記のリソースの応答ヘッダーは、多くの情報を明らかにしています:
リクエストヘッダー
ウェブサイトのアクセス速度が遅い、またはオリジンサーバーのバックトゥオリジン帯域幅が大きい場合、ウェブサイトのトラフィックの増加を除外した後に、低いキャッシュヒット率がバックトゥオリジンの行動を引き起こしている可能性があります。この場合、以下の方法でトラブルシューティングできます。
観察されたヒット率の低下が期待と一致しない場合、ドメイン構成を確認してキャッシュ戦略が合理的かどうかを判断できます:
1. オリジンサーバーのキャッシュヘッダーは正しく構成されていますか?
ノードキャッシュ戦略がオリジンサーバーに従うように設定されていて、オリジンサーバーが強制的にCache-Controlヘッダーをリソースのキャッシングを無効にするように設定している場合、CDNノードのキャッシュ機能が失敗し、ヒット率が低下します。
2. オリジンサーバーで新しいリソースが多数発表されていますか?
オリジンサーバーに多くの新しいリソースがある場合、より多くのリクエストがオリジンに戻ることを引き起こし、トラフィックヒット率が低下します。
3. オリジンサーバーに例外がありますか?
オリジンサーバーが障害を起こし、リソースアクセスに多数の4xxおよび5xxエラーが発生すると、各リクエストがバックトゥオリジンの行動を引き起こし、ヒット率が低下します。
4. キャッシュの有効期限が正しく構成されていますか?
CDNキャッシュ時間が短すぎる場合、CDNノードが頻繁に期限切れになり、頻繁なバックトゥオリジンの行動を引き起こし、ヒット率が低下します。同時に、リソースキャッシング戦略には優先順位があり、実際のヒット戦略が期待に沿わない場合があります。
5. フィルタリングパラメータ機能は有効ですか?
ドメインに対してフィルタリングパラメータキャッシュ機能が無効になっている場合、キャッシュはファイルのフルパスに基づいて一致します。同じリソースが異なるリクエストパラメータを持つ場合、同じキャッシュにヒットできず、ヒット率が低下します。
キャッシュヒット率の低下の理由を理解した後、以下の手段を通じてリソースのヒット率を向上させることができます。Tencent EdgeOneでは、強力なルールエンジンを使用して、ドメインごとに異なるルールを構成でき、グローバル設定を通じてサイト全体にグローバルルールを定義できます:
ノードキャッシュ時間は、リソースがCDNサービスノードにキャッシュされるために構成された時間を指します。この構成は、Tencent EdgeOneのキャッシュヒット率統計に直接影響します。サイト加速で、ルールエンジンをクリックし、新しいルールを作成し、EdgeOneのノードキャッシュTTLを見つけます。必要に応じて静的および動的リソースのキャッシュ時間を設定します。
ブラウザキャッシュ時間は、リソースがブラウザにローカルにキャッシュされるために構成された時間を指します。この構成はTencent EdgeOneコンソールのキャッシュヒット率統計を改善しませんが、実質的にはユーザーアクセスの実際のヒット率を向上させます。サイト加速ページで、ルールエンジンをクリックし、ブラウザキャッシュTTLを見つけ、静的および動的リソースのキャッシュ時間を必要に応じて設定します。
無効なリフレッシュ行動、特にディレクトリリフレッシュを制御します。アクセス量が多く、変更が稀なリソースについては、次の変更サイクルの前にリフレッシュタスクを提出する必要はありません。ディレクトリリフレッシュは、大量のリソースアクセスを失敗させ、バックトゥオリジンを引き起こすため、その使用をできるだけ減らしてください。使用する必要がある場合は、影響が少なく、レベルが長いディレクトリをリフレッシュしてください。
新しいバージョンが公開される前やリソースが変更される前に、ホットスポットリソースを抽出し、CDNプリロード機能を使用してノードにリソースをキャッシュします。可能な限りCDNアクセス量を増加させ、キャッシュの排除を避けます。
Tencent EdgeOneは、基本的なキャッシング能力の向上に加えて、キャッシュ戦略をさらに最適化し、アクセスヒット率を向上させます。主要な機能には:
Tencent EdgeOneは、Tencentによってグローバルに立ち上げられたエッジセキュリティ加速プラットフォームです。2800以上のエッジノードと20年以上のセキュリティ技術の蓄積に依存し、企業に対してセキュリティ保護、パフォーマンス加速、および関連技術サポートのための統合エッジサービスを提供します。このプラットフォームは、DNS解決、Layer 4プロキシ、サイト加速、インテリジェント加速、DDoS保護、Web保護、ボット保護、負荷分散など、10以上の機能を統合しています。企業プラットフォームとユーザー体験の両方のセキュリティと安定性を確保し、グローバル企業のデジタルトランスフォーメーションや海外展開を支援することを目的としています。
Tencent EdgeOneは、キャッシュヒット率を向上させるために、デフォルトで基盤レベルに中間オリジンを増加させたアーキテクチャを提供します。エッジ層は広範なカバレッジを提供し、中間オリジンは高いストレージ能力を提供します。任意のCDNノードがヒットしてリクエストに応じると、それはキャッシュヒットと見なされます。必要に応じて、キャッシング能力をさらに強化するために三層オリジンを構成できます。
同じレイヤーのノード上で、Tencent EdgeOneはマージオリジンと内部クラスタオリジン機能も提供します。特定の時間枠内に、同じリソースに対するリクエストは1つのオリジンリクエストにマージされ、同じリソースに対するアクセススケジューリングが内部クラスタ内で行われます。これにより、オリジンリクエストが収束し、リソースヒット率が向上します。
大きなファイルがダウンロードされるシナリオでは、顧客がファイル全体をリクエストしない場合があります。Tencent EdgeOneは、大きなファイルのストレージを基盤レベルでシャーディングブロックに保存し、オンデマンドでファイルを引き出すことで最適化します。同時に、任意のバイト間隔の範囲リクエストについては、ノードはオリジンから要求されたバイト間隔をカバーする完全なフラグメントを取得します。同じフラグメント内の他のバイトに対する後続のリクエストはキャッシュに直接ヒットでき、ストレージとオリジン取得の効率を最適化します。
Tencent EdgeOneコンソールでは、通常の加速ノードキャッシングの設定に加えて、ヘッダーキャッシング、ステータスコードキャッシング、ブラウザキャッシング、およびキャッシュ構成など、複数のキャッシュ関連機能も提供しています。ユーザーはコンソール上でリソースキャッシングルールを自分で定義できます。
CDNキャッシュヒット率の最適化は、パフォーマンスの向上、コスト削減、スケーラビリティの向上、そしてウェブアプリケーションの全体的な信頼性とセキュリティの向上に不可欠です。
Tencent EdgeOneの高度なキャッシング能力、グローバルなカバレッジ、動的コンテンツのサポート、カスタマイズ可能なポリシー、リアルタイムモニタリング、および強化されたセキュリティは、CDNキャッシングを最適化し、優れたコンテンツパフォーマンスを提供するための強力なソリューションとなります。これらの利点を直接体験したい方は、ぜひお問い合わせいただき、Tencent EdgeOneやその機能について詳しく学んでください。また、こちらをクリックして無料トライアルを開始することもできます。