Alibaba Cloud CDNのキャッシュヒット率が低い場合、オリジンサーバーの負荷が増加し、静的リソースの取得が遅くなります。 原因に基づいて、Alibaba Cloud CDNのキャッシュヒット率を改善するソリューションを選択できます。
背景情報
Alibaba Cloud CDNは、静的リソースをPOP (Point of presence) にキャッシュして、コンテンツ配信を高速化します。 クライアントがPOPにキャッシュされているリソースを要求すると、POPは要求されたリソースをクライアントに返します。 これにより、配信プロセスが簡素化され、コンテンツ配信が高速化され、配信元サーバーの負荷が軽減されます。 キャッシュヒット率が低いと、オリジンサーバーの負荷が増加し、ユーザーエクスペリエンスが低下します。
- バイトヒット率=キャッシュヒットに対して返されるバイト数 /すべてのリクエストに対して返されるバイト数 説明 キャッシュヒット率が低いほど、オリジントラフィックの量が多いことを示します。 オリジンサーバーからのアウトバウンドトラフィックの量が多いほど、帯域幅の値が高くなり、オリジンサーバーの負荷が増えます。 したがって、オリジントラフィックはオリジンサーバーの負荷の量を表し、バイトヒット率は実際のビジネスシナリオでの主要な懸念事項です。
- リクエストヒット率=キャッシュヒット数 /全リクエスト数
キャッシュヒット率の表示
- 方法1: Alibaba Cloud CDNコンソールを使用する Alibaba Cloud CDNコンソールは、次の方法でバイトヒット率を表示します。
- リソースモニタリングリアルタイムモニタリングと比較して、リソースモニタリングを使用すると、過去30日間など、より長い期間内にキャッシュヒット率をクエリできます。 モニタリングデータは5分ごとに収集され、約15分遅れる。 詳細については、「リソースモニタリング」をご参照ください。
- リアルタイムモニタリングリソースモニタリングと比較して、リアルタイムモニタリングを使用すると、前の1時間など、より短い期間内にキャッシュヒット率をクエリできます。 モニタリングデータは毎分収集され、約3分遅れる。 詳細については、「リアルタイムモニタリング」をご参照ください。
- リソースモニタリング
- 方法2: Alibaba Cloud CDN APIの使用
- リソースモニタリングのAPI操作
操作 説明 DescribeDomainHitRateData 1つ以上の高速化ドメイン名のバイトヒット率を照会します。 過去90日間に収集されたデータをクエリできます。 DescribeDomainReqHitRateData 1つ以上の高速化ドメイン名のリクエストヒット率を照会します。 過去90日間に収集されたデータをクエリできます。 - リアルタイムモニタリングのAPI操作
操作 説明 DescribeDomainRealTimeByteHitRateData 1つ以上の高速化ドメイン名のバイトヒット率を照会します。 データは毎分収集される。 過去7日間に収集されたデータをクエリできます。 DescribeDomainRealTimeReqHitRateData 1つ以上の高速化ドメイン名のリクエストヒット率を照会します。 データは毎分収集される。 過去7日間に収集されたデータをクエリできます。
- リソースモニタリングのAPI操作
Alibaba Cloud CDNのキャッシュヒット率の向上
解決策 | 原因と使用シナリオ | 参考情報 |
オフピーク時にリソースをプリフェッチする | 原因: メジャーイベントが開始されるか、インストールパッケージがリリースされる前に、必要なリソースがPOPにプリフェッチされません。 必要なリソースは、オリジンサーバーから取得する必要があります。 これにより、キャッシュヒット率が低下する。 シナリオ
| 手動でリソースを更新 |
キャッシュされたリソースに適切な有効期限 (TTL) 値を指定する
| 原因:
シナリオ: 静的リソースはオリジンサーバーにデプロイされますが、POPにはキャッシュされません。 POPにキャッシュされているリソースは頻繁に期限切れになります。 | リソースのキャッシュルールの作成 |
URLの疑問符 (?) の後のパラメーターを無視する | 原因: リクエストURLにqueryStringまたはその他の変数が含まれている場合、URLが同じリソースへのアクセスに使用されているかどうかに関係なく、URLは異なると見なされます。 この場合、リクエストはオリジンサーバーにリダイレクトされます。 これにより、キャッシュヒット率が低下する。 シナリオ: 異なるクエリ文字列を含むURLを同じリソースにリダイレクトします。 | パラメーターを無視 |
オリジンサーバーからリソースファイルのチャンクを取得するポリシーを構成する | 原因: さまざまな理由により、インストールパッケージまたはビデオストリーミングのダウンロードが一時停止することがあります。 場合によっては、ユーザーはファイルのチャンクのみを必要としますが、POPはファイル全体を返します。 ユーザに返されるコンテンツのサイズは、ユーザによって要求されるコンテンツのサイズよりも大きい。 この場合、キャッシュヒット率は予想される率よりも低い。 シナリオ: インストールパッケージまたはビデオストリーミングのダウンロード。 | 範囲オリジンフェッチ機能の設定 |
キャッシュヒット率を上げるためのその他のポリシー | Alibaba Cloud CDNは、セントラルまたはエッジルーティングシステムを使用した302リダイレクト、back-to-originリクエストのマージ、さまざまなビジネス要件に基づくキャッシュ共有など、他の最適化ソリューションも提供しています。 | Alibaba Cloudのアフターセールスエンジニアは、バックエンドでポリシーを設定します。 |
キャッシュヒット状態のログデータの表示
Alibaba Cloud CDNは、すべてのリクエストのキャッシュヒットステータスを記録します。 ログ形式の詳細については、「ログのダウンロード」をご参照ください。
- HIT: キャッシュヒットを示します。
- MISS: キャッシュミスを示す。
26/Jun/2019:10:38:19 + 0800] 192.168.53.146 - 1542 "-" "GET http://example.aliyundoc.com/index.html" 200 191 2830 MISS "Mozilla/5.0 (互換性のある; AhrefsBot/5.0; + http://example.com/robot/)" "text/html"
DescribeCdnDomainLogsを呼び出して、高速化ドメイン名のログデータを照会することもできます。