全部產品
Search
文件中心

CDN:提高CDN快取命中率

更新時間:Aug 02, 2025

CDN快取命中率低會導致來源站點壓力大,靜態資源訪問效率低。您可以根據導致CDN快取命中率低的具體原因,選擇對應的最佳化策略來提高CDN的快取命中率。

背景資訊

CDN通過將靜態資源緩衝在CDN節點上實現資源訪問加速。當用戶端訪問某資源時,如果CDN節點上已經緩衝了該資源,使用者請求會命中CDN節點上的緩衝,直接從緩衝中擷取資源返回給使用者,可避免通過較長的鏈路回源,提高資源的響應速度和降低來源站點的頻寬壓力。如果CDN快取命中率低,會影響使用者體驗和增加來源站點的頻寬壓力。

CDN緩衝位元組命中率:

  • 位元組命中率=(L1的邊緣節點響應流量-回源的邊緣節點響應流量)/L1的邊緣節點響應流量

    說明

    位元組命中率越低,回源流量越大,來源站點的流出流量越大,來源站點的頻寬資源以及其他的負載越大,因此回源流量代表了來源站點伺服器接收到的負載壓力,在業務使用中主要關心位元組命中率。

  • 請求命中率=CDN快取命中的請求數÷CDN所有的請求數

    重要

    range分區回源情況下,命中率指標建議參考位元組命中率。

查看CDN快取命中率

方式一:通過控制台查看

CDN控制台提供的快取命中率監控為位元組命中率,詳細資料如下:

  • 通過資源監控功能查詢

    可查詢資料的時間範圍較大,適合查看較長周期(例如30天)內的命中率情況。時間粒紋為5分鐘的情況下,資料延遲15分鐘左右。詳細資料,請參見資源監控命中率

  • 通過即時監控功能查詢

    可查詢資料的時間範圍較小,適合查看較短周期(例如1小時)內的即時命中率情況。時間粒紋為1分鐘的情況下,資料延遲3分鐘左右。詳細資料,請參見即時監控品質監控

方式二:調用API查看

提高CDN快取命中率

下表列出了影響CDN快取命中率的因素和提高CDN快取命中率的方法。

策略

影響因素與應用情境

配置方法

業務高峰前預熱熱門資源

影響因素:營運大型活動或新版本安裝包發布前,沒有提前將資源預熱到CDN節點,大量資源需要從來源站點擷取,導致CDN快取命中率低。

應用情境:

  • 營運活動

    營運一個大型活動時,提前將活動頁涉及到的靜態資源預熱至CDN節點,活動開始後使用者訪問的所有靜態資源均已緩衝至CDN加速節點,由加速節點直接響應。

  • 安裝包發布

    新版本安裝包或升級包發布前,提前將資源預熱至CDN加速節點,產品正式上線後,海量使用者的下載請求將直接由CDN加速節點響應,提升下載速度,大幅度降低來源站點壓力,提升使用者體驗。

重新整理和預熱資源

合理配置緩衝到期時間:

  • 不常更新的靜態檔案(例如,圖片類型、應用下載類型等),建議設定1個月以上。

  • 頻繁更新的靜態檔案(例如,JS、CSS等),根據實際業務情況設定。

  • 動態檔案(例如,PHP、JSP、ASP等),建議設定為0s,即不緩衝。

影響因素:

  • CDN上未配置緩衝策略,所有使用者請求都需要回來源站點。

  • CDN上配置的緩衝到期時間過短,緩衝資源頻繁到期,導致快取命中率低。

應用情境:使用者在來源站點發布了靜態資源,CDN節點沒有將資源緩衝下來,或者CDN節點上緩衝的資源很快就失效了。

配置緩衝到期時間

去除URL中問號後的參數緩衝

影響因素:當URL請求中帶有queryString或其他可變參數時,訪問同一個資源的不同URL(URL攜帶的參數不同)會重新回源,導致CDN快取命中率低。

應用情境:希望通過不同的URL(URL攜帶的參數不同),可以訪問到同一個資源。

忽略參數

大檔案設定分區回源策略

影響因素:使用者下載安裝包可能下載一半就停止下載,或者觀看視頻只看了一部分就停止觀看,即使用者只需要訪問資源檔指定範圍內的部分內容,但是CDN節點會向來源站點請求整個檔案,從而使得CDN節點從來源站點下載的內容大於響應給使用者的內容,導致快取命中率低。

應用情境:使用者下載應用安裝包或者觀看視頻資源。

配置Range回源

其他命中率最佳化策略

除了以上幾種常用的命中率最佳化措施以外,阿里雲CDN還有其他的最佳化措施,這些措施可以根據不同的業務情境來配置,例如:中心302調度、邊緣302調度、合并回源、共用快取等。

由阿里雲售後工程師在後台配置。

查看快取命中狀態日誌

在CDN的請求日誌中,記錄了所有CDN請求的快取命中狀態。詳細日誌格式,請參見離線日誌欄位說明

快取命中狀態欄位說明:

  • HIT:表示命中緩衝。

  • MISS:表示未命中緩衝。

說明

命中狀態僅表示CDN L1節點的命中狀態。例如,CDN L1節點未命中緩衝,L2節點命中緩衝,日誌中仍顯示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 (compatible; AhrefsBot/5.0; +http://example.com/robot/)" "text/html"

您也可以調用DescribeCdnDomainLogs - 查詢離線日誌下載地址介面,擷取加速網域名稱的日誌資訊。