雲時代 面向使用者體驗的CDN

2021-09-23 19:00:40 字數 2232 閱讀 2800

經過十年技術沉澱、資源積累,阿里雲cdn目前服務客戶數突破10萬之多,國內處於領先地位。在基礎設施方面,阿里雲cdn擁有超過500個節點數,12tb的儲備量,400gb大節點,全萬兆網絡卡,骨幹網全覆蓋,還有bgp網路作為補充,行業內唯一乙個使用ssd硬碟的cdn服務商,ssd的上下差距非常大,因此在i/o效能方面會比友商好得多;一周時間即可上線tb的頻寬資源,滿足使用者的突發頻寬需求,全球覆蓋6大洲、30多個國家,滿足**海外使用者的訪問需求。

系統的整體架構

系統整體架構圖

整體框架主要有三個部分:一是排程系統,即自主研發的自動化排程系統;二是節點系統,分成面向使用者接入的l1cache和作為二級快取的l2cache,當內容快取在l1cache,則l1可以返回,若l1cache沒有,則l2cache返回,l2cache沒有,則使用者資料中心返回,但絕大部分的流量都不會返回到使用者資料中心;三是管理中心,包括監控系統,內容管理,配置管理和計費系統。其中,與使用者強相關的是節點系統,因為所有的請求都會通過節點系統響應;再乙個是監控系統和排程系統,因為需要監控和排程來選擇離使用者最近的節點,讓使用者有更好的網路質量,並在系統出現問題時,能夠更快的發現、診斷、做出切換及解決問題。

響應時間

首先就是響應時間,響應時間最關鍵的在於節點系統的響應快不快,整個節點系統的架構圖如下:

圖二 節點系統架構圖

節點系統中,lvs做4層負載均衡,tengine做7層負載均衡,swift做快取伺服器。其中,lvs的創始人章文嵩博士就是**cdn的創始人,對其非常了解;tengine是由阿里雲cdn團隊維護的nginx開源分支,是中國用的最多的開源軟體之一;swift是由阿里雲完全自主研發。所以,節點系統完全自主可控。重點介紹具有核心競爭力的swift軟體架構。

圖三swift軟體架構

swift的軟體架構,即pass架構,有以下幾個特點,並行、非同步、可擴充套件、簡單(parallel, asynchronous, scalability, ******),因為框架好,同時利用了各種高階技術,例如epoll、aio,以及我們自行設計的**快取的替換演算法,請求內部的多路復用等。經測試,swift效能是開源軟體的2.5倍。

圖四 效能比較

以上是測試資料,針對實際使用者訪問的線上資料,統計了所有的使用者請求,相同一台機器,swift的qps比開源軟體高,效能比開源軟體好,cpu和ioutil利用率比開源軟體低,能夠均衡使用cpu多核處理能力,高效合理地使用和控制記憶體,擁有最大化硬碟iops和吞吐。其中,使用者訪問響應時間,乙個請求大概在2毫秒左右(包括回源),所以實際不到1毫秒,因此響應時間幾乎完全無感知。

圖五tengine毫秒級的響應時間

有了這份資料,我就可以知道,不同節點覆蓋同乙個地域的網路質量是怎麼樣的,在此基礎上我們就可以知道,任何乙個地區用哪些節點覆蓋是最合適的,這樣我們就可以實現最優的節點覆蓋;另外,基於某個地域的網路質量和網路服務質量歷史資料,我們就可以知道我們服務的當前情況怎麼樣,有沒有網路抖動和異常, 我們內部稱之為基於趨勢的網路抖動發現機制;

我們做tcp優化的思路主要是兩條,第一:把協議自身的效能做到極致,尤其是在可靠傳輸機制這塊;第二,我們稱之為端到端的qos,就是要根據不同應用的qos要求為他定製針對性的擁塞控制演算法,從而讓服務質量更好:

•基於時間序的丟包發現機制 

•主動的丟包發現機制 

•自適應的初始視窗 

•更激進的擁塞避免演算法 

•更小的連線超時時間 

tcp優化效果如圖所示:

圖六 tcp優化效果對比

服務穩定

穩定的服務背後,最重要的是快速的發現和定位問題,並做出及時的動作,保證服務不受到影響;

再通過自動化排程系統,從眾多資料中快速發現並解決問題,這是排程系統的框架圖如下:

圖七 排程系統框架圖

由此,可以保證快速感知、發現並且自動化處理問題,從而保證給使用者穩定的服務。

接下來阿里雲即將推出來的動態加速,基於軟體定義專線、tcp協議棧優化、動態路由、私有協議等,**加速比bgp網路好40%。還會推出移動解決方案:基於手機**做了大量的網路的優化工作,包括sdk、多路復用、動態選路、速度探測、自動探測技術等。

本文根據阿里雲cdn事業部專家劉泓昊(天瀾)在5月

17日舉辦的2016雲棲大會·

武漢峰會上

《雲時代——面向使用者體驗的cdn》

演講整理而成。

產品經理 使用者體驗時代的9條建議

1 你是幹什麼的?請先把你的產品描述清楚了再談視覺和功能設計,使用者不註冊,其他皆是扯淡。使用者需要在登入你的 或應用主頁的幾秒鐘內搞明白你能為他們做什麼,你打算怎麼做。2 花哨設計才是王道 不要追求極簡主義,它只適合極少數產品。產品最重要的乙個特徵是易用性 我能很快地做我想做的事情,能為主要的使用...

產品經理 使用者體驗時代的9條建議

1 你是幹什麼的?請先把你的產品描述清楚了再談視覺和功能設計,使用者不註冊,其他皆是扯淡。使用者需要在登入你的 或應用主頁的幾秒鐘內搞明白你能為他們做什麼,你打算怎麼做。2 花哨設計才是王道 不要追求極簡主義,它只適合極少數產品。產品最重要的乙個特徵是易用性 我能很快地做我想做的事情,能為主要的使用...

AI時代,如何平衡的使用者體驗和隱私矛盾

提供個性化客戶體驗的方式遠遠超過了通過自動電子郵件機器式的向使用者傳送資訊帶來的感受。個性化客戶體驗不僅需要提供商提前了解客戶的興趣 經歷以及潛在的意圖,並用這些資料來建立乙個面向客戶多階段的方案,有效地提公升真實感與使用者參與度。根據愛爾蘭諮詢公司埃森哲的資料顯示,當公司未能提供相關的個性化體驗時...