一般在某網站使用了CDN節點來實現內容分發加速後,當源站內容更新的時候,CDN刷新系統會經過提交刷新請求將CDN節點上的指定緩存內容強制過時。當用戶訪問的時候,CDN節點將回源獲取最新內容返回給用戶,並在緩存節點更新資源。傳統CDN刷新的生效時間一般須要數分鐘,而且隨着服務節點的數量和形態增多,生效時間會線性變長。緩存
在這種狀況下就會遇到這些問題:當媒體網站發表了一篇內容有錯誤的文章,由於刷新系統緩慢,沒法第一時間修訂或撤回;在電商大型促銷活動期間,產品活動詳情頁的圖片須要實時更新,由於不能及時刷新CDN緩存,最新的詳情頁沒法第一時間更新到全網,可能會影響用戶下單。諸如此類的以上問題可能會帶來必定的信譽或業務損失。網絡
毫無疑問,想要避免以上問題,CDN刷新系統須要在源站內容更新後同時刷新CDN節點的緩存,確保源站內容與CDN緩存內容儘可能保持一致。大數據
實際上,阿里雲CDN天天爲超過百萬的域名加速,承接數十億次的刷新,想要打破常規刷新速率壁壘,會面臨如下幾個技術挑戰:優化
第一, 實時性,在如此大數據量的背景下,須要解決如何將消息快速傳播至全網的問題
第二, 可靠性,在複雜的公網傳輸鏈路之下,須要有效應對網絡擁塞,確保傳輸的低延時和穩定性
第三, 可擴展性,隨着業務增加,CDN節點增多,要解決刷新時長不會線性增加的問題,在不進行中心擴容的狀況下依然保持刷新速率,提供「無感」的刷新體驗網站
針對以上幾個技術難點,阿里雲CDN技術團隊進行大量協議優化與實踐,最終達成突破性進展,實現了全網平均刷新生效時間低至毫秒級。也就是說在當客戶源站內容發生更改,不到1秒時間內,全網用戶已經能夠訪問到最新內容了。這套系統實現了真正的消息指數級廣播,能夠有效應對刷新系統緩慢帶來的信息更新不及時等問題,極大地提高了客戶內容的全網刷新速率,進而提高網民訪問體驗。同時,刷新系統採用log(n) base(a) 的收斂速度,能夠作到數萬級別的節點下刷新時間依舊保持在毫秒級,不線性增加,保障了服務節點飛速增加狀況下的全網刷新。後續該能力將會面向阿里雲CDN客戶開放。阿里雲
除此之外,阿里雲CDN目前有全球2500+節點,120T帶寬儲備,依託CDN智能調度系統、精準可控的水位預測技術、全鏈路容災保障等能力,經受住一次次雙11晚會、春晚直播等大型互聯網直播的考驗,同時在去年夏天俄羅斯世界盃期間承擔了全網70%的世界盃流量。圖片
原文連接
本文爲雲棲社區原創內容,未經容許不得轉載。資源