日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

大文件下载及视频点播的CDN加速实践

發(fā)布時間:2024/9/3 编程问答 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 大文件下载及视频点播的CDN加速实践 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
簡介:為了幫助用戶更好地了解和使用CDN產(chǎn)品,CDN應(yīng)用實踐進階系統(tǒng)課程開課啦!前幾天,阿里云CDN產(chǎn)品專家陳智城在線分享了《大文件下載及視頻點播的CDN加速實踐》議題,解讀大文件下載和視頻點播的業(yè)務(wù)場景、內(nèi)容分發(fā)挑戰(zhàn)及對應(yīng)解決方案。本篇文章,將為你詳述分享原文。

為了幫助用戶更好地了解和使用CDN產(chǎn)品,CDN應(yīng)用實踐進階系統(tǒng)課程開課啦!前幾天,阿里云CDN產(chǎn)品專家陳智城在線分享了《大文件下載及視頻點播的CDN加速實踐》議題,解讀大文件下載和視頻點播的業(yè)務(wù)場景、內(nèi)容分發(fā)挑戰(zhàn)及對應(yīng)解決方案。本篇文章,將為你詳述分享原文。

關(guān)注阿里云邊緣計算和CDN官方賬號:阿里云Edge Plus ,免費獲得講師課件PPT

一、大文件下載和視頻點播的內(nèi)容分發(fā)挑戰(zhàn)

對于下載類的場景來說,常見細分場景包括:手機應(yīng)用商店、游戲應(yīng)用商店以及游戲更新和手機操作系統(tǒng)更新等,而對于視頻類的應(yīng)用場景來說,主要細分場景包括短視頻、長視頻、在線教育、OTT機頂盒、廣電傳媒和音樂網(wǎng)站等等。

為什么會把下載類的應(yīng)用場景和視頻點播類應(yīng)用場景放在一起去做比對呢?因為視頻點播這個應(yīng)用場景實際上也是一種大文件下載場景,這兩個應(yīng)用場景有著很高的業(yè)務(wù)相似性,也有很多共性問題,而它們之間的區(qū)別在于視頻點播對于訪問的性能會有更高的要求。

兩個場景在內(nèi)容分發(fā)方面所面臨的挑戰(zhàn)主要有三大類:

  • 用戶體驗問題,主要體現(xiàn)在:國內(nèi)運營商環(huán)境復(fù)雜,跨運營商訪問效果差;用戶分布廣,跨地區(qū)訪問時延高、速度慢;弱網(wǎng)環(huán)境下傳輸性能差,速度慢、卡頓嚴重等方面;
  • 源站性能與成本問題,主要體現(xiàn)在:中心式部署的源站彈性擴展能力差,無法承受大規(guī)模突發(fā)流量以及中心式部署的源站帶寬成本高昂;
  • 業(yè)務(wù)安全問題,主要體現(xiàn)在:時刻面臨著DNS劫持(例如被劫持了頁面內(nèi)容,被嵌入了頁面廣告等)、資源盜鏈(源站面臨帶寬成本上的損失)等安全威脅。

  • 二、CDN內(nèi)容分發(fā)網(wǎng)絡(luò)架構(gòu)

    當下,CDN已經(jīng)是成為了緩解網(wǎng)絡(luò)擁塞、提高業(yè)務(wù)響應(yīng)速度、提升用戶體驗的一種非常重要的技術(shù)手段,也是互聯(lián)網(wǎng)基礎(chǔ)設(shè)施當中不可或缺的重要組成部分。下面我們通過阿里云CDN的內(nèi)容分發(fā)網(wǎng)絡(luò)架構(gòu)來說明典型的CDN內(nèi)容分發(fā)網(wǎng)絡(luò)都包含哪些組成部分:

    (1)調(diào)度系統(tǒng)
    用戶的終端會發(fā)起各種應(yīng)用訪問,比如:點播和下載這兩個應(yīng)用場景。用戶的訪問請求會首先去做域名DNS解析,然后用戶的域名DNS解析請求將會通過阿里云CDN的調(diào)度系統(tǒng)去處理;

    (2)鏈路質(zhì)量系統(tǒng)
    鏈路質(zhì)量探測系統(tǒng)的作用是去實時地監(jiān)測緩存系統(tǒng)中的每一個節(jié)點和鏈路的實時負載和健康狀況,然后反饋給調(diào)度系統(tǒng),調(diào)度系統(tǒng)會根據(jù)用戶請求中攜帶的IP地址信息去解析用戶的運營商和區(qū)域歸屬,然后綜合鏈路質(zhì)量信息為用戶分配一個最佳的接入節(jié)點;

    (3)緩存系統(tǒng)
    用戶收到最佳接入節(jié)點的IP以后,就會去訪問這個緩存節(jié)點,節(jié)點如果已經(jīng)緩存了用戶請求的資源,那么就將會直接將資源返回給用戶;如果L1節(jié)點沒有命中,會上溯到L2節(jié)點,如果L2節(jié)點也沒有緩存資源,才會返回源站去拉取這個資源;某個資源首次拉取后將會在緩存系統(tǒng)中緩存下來,這樣如果后續(xù)用戶訪問到同一個資源,就可直接從緩存系統(tǒng)去拉取資源,避免重復(fù)回源;通過分級緩存的這種部署架構(gòu)可以達到提高內(nèi)容分發(fā)效率、降低回源帶寬以及提升用戶體驗的效果;

    (4)支撐服務(wù)系統(tǒng)
    阿里云CDN在內(nèi)容分發(fā)之外也提供了支撐服務(wù)系統(tǒng)。第一是具備資源監(jiān)測能力,可以對緩存系統(tǒng)上客戶業(yè)務(wù)運行的狀態(tài)進行監(jiān)測,比如對CDN加速域名的QPS、帶寬、http狀態(tài)碼等常見指標實現(xiàn)監(jiān)控。第二是數(shù)據(jù)分析,用戶可以分析CDN加速域名的TOP URL、PV、UV等數(shù)據(jù)。第三是配置管理系統(tǒng),用戶通過該系統(tǒng)可以下發(fā)如緩存文件類型、緩存時間、去參數(shù)緩存等緩存規(guī)則,以提升緩存系統(tǒng)的運作效率。


    三、 CDN如何解決互聯(lián)網(wǎng)內(nèi)容分發(fā)所面臨的問題?

    下面,從用戶體驗、源站性能與成本以及業(yè)務(wù)安全這三個方面來看看CDN是如何解決問題的。

    第一,用戶體驗問題

    首先,CDN可以為用戶提供諸多的就近接入的節(jié)點。
    阿里云CDN建立了一張覆蓋全球六大洲70多個國家的2800多個的節(jié)點,全網(wǎng)具備了130Tbps的帶寬輸出能力,基本上覆蓋了國內(nèi)以及做海外的主要運營商。依托豐富的資源節(jié)點覆蓋,阿里云CDN能夠讓用戶就近接入同運營商節(jié)點,解決跨運營商互聯(lián)互通、遠距離訪問時延大等用戶體驗問題。

    其次,提升用戶體驗的第二點是需要提供精準的調(diào)度能力,阿里云CDN在這里是提供了4項關(guān)鍵的優(yōu)化措施:

    1、持續(xù)更新的精準IP數(shù)據(jù)庫:IP數(shù)據(jù)庫的作用是在用戶的DNS解析請求轉(zhuǎn)發(fā)到了CDN調(diào)度系統(tǒng)時,調(diào)度系統(tǒng)會判斷用戶的地區(qū)和運營商歸屬,以此來為用戶分配就近接入的同運營商CDN節(jié)點。為了確保IP數(shù)據(jù)庫的數(shù)據(jù)處于最新的狀態(tài),數(shù)據(jù)庫一直在持續(xù)地更新。
    2、提供HTTPDNS服務(wù)(需要客戶端兼容):采用HTTPDNS這項技術(shù)使得用戶終端可以繞開運營商的local DNS,直接采用HTTP協(xié)議去訪問調(diào)度系統(tǒng),請求所需要訪問的域名的最優(yōu)接入節(jié)點,這樣可以避免DNS劫持所帶來的業(yè)務(wù)安全問題。
    3、節(jié)點數(shù)據(jù)分析:CDN調(diào)度系統(tǒng)通過鏈路狀態(tài)系統(tǒng)去實時地分析整個緩存系統(tǒng)中的所有節(jié)點和鏈路的健康狀況,為用戶選擇最優(yōu)的接入節(jié)點,避免因為接入節(jié)點質(zhì)量不佳而影響到用戶訪問體驗。
    4、基于內(nèi)容調(diào)度,提高訪問命中率:在大文件下載和視頻點播這兩個應(yīng)用場景上經(jīng)常使用302調(diào)度這種基于內(nèi)容的調(diào)度技術(shù),302調(diào)度是一種中心調(diào)度方案,用戶在請求某一個資源的時候,在完成域名DNS解析之后,用戶請求將會先訪問到中心調(diào)度系統(tǒng)上,然后中心調(diào)度系統(tǒng)將會解析用戶請求需要訪問的內(nèi)容,再通過302重定向的方式為用戶分配最佳接入節(jié)點。
    通過采用以上4項優(yōu)化措施,能夠為用戶提供更加精準的調(diào)度能力,從而讓用戶能夠接入最佳的CDN節(jié)點。

    CDN常見的三種調(diào)度方案簡單對比如下圖所示:

    這里簡單說明下這三種常見的CDN調(diào)度方式的優(yōu)缺點:
    (1)DNS調(diào)度是最常用和最通用的調(diào)度方案,缺點是存在DNS劫持的風險,調(diào)度的精確度也會差一些;
    (2)302調(diào)度非常適合用在大文件下載和視頻點播這兩個應(yīng)用場景,優(yōu)點是可以提高調(diào)度的精確度,缺點是將會增加首包的時延(在大文件下載和視頻點播場景下對首包時延不太敏感,而對調(diào)度精確度要求更高)
    (3)HTTPDNS調(diào)度的優(yōu)點是有較高的安全性(可以規(guī)避DNS劫持風險)和調(diào)度精確度,但是有個很大的缺點,需要客戶端提供支持(例如在手機APP上嵌入SDK),通用性較差。

    再次,提升用戶體驗的第三個優(yōu)化點是對傳輸鏈路做智能優(yōu)化

    1、協(xié)議優(yōu)化:通過調(diào)整擁塞算法、丟包探測算法等優(yōu)化措施,對TCP協(xié)議棧的性能做了大幅度提升,尤其對弱網(wǎng)環(huán)境下的網(wǎng)絡(luò)性能提升明顯;
    以下兩張帶寬利用率對比圖,左邊是標準TCP傳輸協(xié)議,在建立TCP連接之后,需要通過相對更長的時間去提升帶寬利用率,一旦碰到丟包情況,帶寬利用率會快速下跌,并且需要經(jīng)歷慢速爬坡階段才能夠逐步提升帶寬利用率,尤其在弱網(wǎng)環(huán)境下,使用標準TCP協(xié)議的情況下,帶寬利用率的下降會非常的嚴重。右側(cè)是阿里云優(yōu)化后的TCP協(xié)議,通過快速啟動、主動擁塞探測和快速丟包恢復(fù)等技術(shù)優(yōu)化措施,能夠提供更高的帶寬利用率,即使在網(wǎng)絡(luò)條件相對差一些的情況下,也可以有比較好的優(yōu)化效果。

    2、連接加速:通過修改協(xié)議棧的 Handshake Timer 來實現(xiàn)快速重試,以彌補由于丟包導(dǎo)致的重試超時;
    3、持久連接:在CDN節(jié)點間預(yù)先建立好 TCP 連接,并長時間保持不斷開,這樣在有新連接過來的時候就可以直接復(fù)用,減少TCP握手時延。

    第二,源站性能、成本壓力問題

    通過提高緩存系統(tǒng)的效率幫助客戶降低源站的性能和成本壓力,主要包括六個方面的技術(shù)措施:
    1、分布式部署:確保用戶能夠就近訪問同運營商的節(jié)點,以此來提高訪問速度,解決跨運營商訪問慢、長距離回源時延高等問題;
    2、多級緩存架構(gòu):多級緩存架構(gòu)中的每一級都能夠用來緩存用戶請求的資源,多級回源收斂之后可以極大地降低回源流量;
    3、內(nèi)容預(yù)取:通過內(nèi)容預(yù)取技術(shù)提前把源站的內(nèi)容預(yù)取到CDN節(jié)點上,減少回源量和提高緩存命中率;
    4、合并回源:配置若干個域名的回源請求與某一個域名(業(yè)務(wù)相同的情況下)相合并,以減少重復(fù)回源的流量;
    5、去參數(shù)緩存:設(shè)置hashkey(緩存key)時,配置去掉資源URL后面的參數(shù),以不帶參數(shù)的URI作為緩存key,以提高緩存命中率;
    6、流量控制:提供精細化的流量控制能力,支持單請求流控和全網(wǎng)流控,支持邊緣流控和回源流控,能夠有效降低客戶成本。

    下圖中標記的序號代表了以上6個技術(shù)措施在CDN緩存系統(tǒng)上的作用位置:

    這些技術(shù)措施綜合起來可以幫助客戶去有效地減少回源帶寬、提升緩存命中率,從而降低源站的帶寬壓力、降低源站的帶寬成本。

    第三,業(yè)務(wù)安全風險問題

    阿里云CDN通過可靠的安全防護措施,去幫助用戶規(guī)避業(yè)務(wù)上的安全風險。
    1、防盜鏈:可以選擇使用Referer、UA、URL、IP等通用鑒權(quán)方式,也可以用EdgeScript來定制鑒權(quán)規(guī)則,支持邊緣鑒權(quán)和中心鑒權(quán),通過嚴格校驗用戶的資源訪問請求來防止源站資源被盜用;
    2、DNS防劫持:HTTPDNS技術(shù)使用HTTP協(xié)議訪問阿里云的服務(wù)端,獲得域名解析結(jié)果,可以繞過運營商的Local DNS,避免域名DNS劫持;
    3、HTTPS傳輸加密:支持采用TLS協(xié)議來加密HTTP協(xié)議內(nèi)容,防止明文數(shù)據(jù)暴露在互聯(lián)網(wǎng)上,并且可以設(shè)置TLSv1.3、HSTS等高級功能。

    最后,我們再整體回顧一下,阿里云CDN在大文件下載和視頻點播這兩大應(yīng)用場景下提供了哪些的核心能力:
    1、豐富的資源節(jié)點:能夠為用戶提供就近接入的同運營商CDN節(jié)點,解決長距離接入和跨運營商訪問帶來的延遲高和速度慢的問題
    2、精準的調(diào)度系統(tǒng):能夠?qū)崟r地獲取CDN節(jié)點的健康狀況,并根據(jù)用戶的所在位置和運營商來分配最合適的接入節(jié)點,以便取得最佳接入效果
    3、智能的傳輸鏈路:通過協(xié)議優(yōu)化、連接優(yōu)化等措施來降低總體時延、提高傳輸速度,尤其是提高弱網(wǎng)環(huán)境下的傳輸速度
    4、高效的緩存策略:高效的緩存策略能夠帶來更高的用戶命中率(命中就近節(jié)點上的緩存資源),從而提供更高的訪問速度
    5、可靠的安全防護:可靠的安全防護措施能夠?qū)τ脩舻馁Y源訪問請求做嚴格的校驗和加密,保護用戶的資源和業(yè)務(wù)安全

    如果對阿里云CDN產(chǎn)品應(yīng)用進階感興趣,可以登錄專題頁面,了解在線教育、音視頻、安全防護、游戲等其他場景下的最佳實踐,聽產(chǎn)品技術(shù)專家在線授課,解答疑惑:https://yqh.aliyun.com/live/cdn_industry

    直播預(yù)告

    CDN直播場場精彩
    1月6日14:00,CDN開年巨獻
    阿里云CDN年度產(chǎn)品升級發(fā)布會
    🔥 火熱開播🔥

    點擊直達發(fā)布間:https://yqh.aliyun.com/live/cdn_0106

    原文鏈接:https://developer.aliyun.com/article/780846?

    版權(quán)聲明:本文內(nèi)容由阿里云實名注冊用戶自發(fā)貢獻,版權(quán)歸原作者所有,阿里云開發(fā)者社區(qū)不擁有其著作權(quán),亦不承擔相應(yīng)法律責任。具體規(guī)則請查看《阿里云開發(fā)者社區(qū)用戶服務(wù)協(xié)議》和《阿里云開發(fā)者社區(qū)知識產(chǎn)權(quán)保護指引》。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,填寫侵權(quán)投訴表單進行舉報,一經(jīng)查實,本社區(qū)將立刻刪除涉嫌侵權(quán)內(nèi)容。

    總結(jié)

    以上是生活随笔為你收集整理的大文件下载及视频点播的CDN加速实践的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。