溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》
  • 首頁(yè) > 
  • 教程 > 
  • 服務(wù)器 > 
  • CDN高級(jí)技術(shù)專家周哲: 深度剖析短視頻分發(fā)過(guò)程中的用戶體驗(yàn)優(yōu)化技術(shù)點(diǎn)

CDN高級(jí)技術(shù)專家周哲: 深度剖析短視頻分發(fā)過(guò)程中的用戶體驗(yàn)優(yōu)化技術(shù)點(diǎn)

發(fā)布時(shí)間:2020-08-11 19:38:30 來(lái)源:ITPUB博客 閱讀:179 作者:小資一夏 欄目:服務(wù)器
2018深圳云棲大會(huì)已經(jīng)圓滿落幕,在飛天技術(shù)匯-彈性計(jì)算、網(wǎng)絡(luò)和CDN專場(chǎng)中,阿里云CDN高級(jí)技術(shù)專家周哲為我們帶來(lái)了《海量短視頻極速分發(fā)》的主題分享,帶領(lǐng)我們從視頻內(nèi)容采集、上傳、存儲(chǔ)和分發(fā)的角度介紹整體方案,并且重點(diǎn)講解短視頻加速的注意事項(xiàng)和用戶體驗(yàn)優(yōu)化要點(diǎn)。

講解從三個(gè)部分展開(kāi):短視頻應(yīng)用場(chǎng)景,阿里云短視頻解決方案,阿里云對(duì)短視頻用戶體驗(yàn)優(yōu)化的相關(guān)優(yōu)化。


短視頻應(yīng)用場(chǎng)景

短視頻比圖片和文字包含更多的信息,在移動(dòng)互聯(lián)網(wǎng)普及的今天,短視頻應(yīng)用場(chǎng)景非常廣泛。

一、社群分享場(chǎng)景
用戶可以錄制視頻,進(jìn)行特效編輯處理,上傳到服務(wù)器,通過(guò)社區(qū)的方式分享給好友。
二、 電商場(chǎng)景
商家可以快速拍攝、制作商品的短片,把商品的介紹視頻發(fā)給消費(fèi)者,這樣可以提高購(gòu)買轉(zhuǎn)化率。
二、IM聊天場(chǎng)景
在交流過(guò)程中,通過(guò)隨拍隨傳的短視頻,用戶可以更生動(dòng)的表達(dá)觀點(diǎn),更真實(shí)的傳遞情感
三、新媒體場(chǎng)景
區(qū)別于傳統(tǒng)、單一的圖文展示形態(tài),短視頻可以快速收集及發(fā)布新聞,一鍵呈現(xiàn)世界
四、體育賽事場(chǎng)景
集成短視頻SDK后,用戶可以在現(xiàn)場(chǎng)實(shí)時(shí)拍攝和剪輯,生成具有傳播價(jià)值的短視頻,通過(guò)分享來(lái)全網(wǎng)同步賽事 


阿里云針對(duì)短視頻的業(yè)務(wù)場(chǎng)景,提供了一整套技術(shù)解決方案。在主播端,提供了視頻上傳SDK和短視頻SDK,在觀眾端提供視頻播放SDK,在服務(wù)器端提供點(diǎn)播服務(wù)、OSS存儲(chǔ)和CDN加速。
CDN高級(jí)技術(shù)專家周哲: 深度剖析短視頻分發(fā)過(guò)程中的用戶體驗(yàn)優(yōu)化技術(shù)點(diǎn)


對(duì)于開(kāi)發(fā)者來(lái)說(shuō),短視頻解決方案的使用流程是這樣的:首先主播端使用短視頻SDK對(duì)用戶的視頻進(jìn)行錄制、特效處理和剪輯,然后將視頻通過(guò)上傳SDK上傳到服務(wù)器端,在服務(wù)器端先通過(guò)點(diǎn)播服務(wù)進(jìn)行轉(zhuǎn)碼以及視頻處理,然后把處理好的視頻存儲(chǔ)到OSS上,做持久化保存。在播放端集成播放器SDK,播放器會(huì)向CDN請(qǐng)求資源,CDN如果有緩存會(huì)把緩存的數(shù)據(jù)發(fā)給客戶端。如果CDN緩存沒(méi)有數(shù)據(jù)會(huì)去OSS中拉取數(shù)據(jù),在返回給客戶端,并把數(shù)據(jù)緩存到CDN上。開(kāi)發(fā)者使用這些技術(shù)組件,可以快速的開(kāi)發(fā)短視頻業(yè)務(wù)。
 
下面,我們逐一介紹解決方案的能力與特點(diǎn)。

CDN高級(jí)技術(shù)專家周哲: 深度剖析短視頻分發(fā)過(guò)程中的用戶體驗(yàn)優(yōu)化技術(shù)點(diǎn)


解決方案中的視頻SDK,包括短視頻、上傳和播放三個(gè)。短視頻SDK包含人臉貼圖、高級(jí)美顏的功能,在用戶錄制視頻之后先進(jìn)行本地美顏再進(jìn)行上傳,同時(shí)也提供專業(yè)濾鏡、MV特效和裁剪壓縮、添加音樂(lè)的功能,使視頻剪輯大眾化;上傳SDK通過(guò)快速通道可以把視頻傳輸?shù)椒?wù)器端,支持?jǐn)帱c(diǎn)續(xù)傳、后臺(tái)上傳、多文件管理等功能;播放器SDK支持Android、IOS、flash、H5等多個(gè)平臺(tái)、加密播放和安全下載等。

點(diǎn)播和存儲(chǔ)服務(wù),點(diǎn)播服務(wù)提供視頻管理相關(guān)的功能,比如視頻轉(zhuǎn)碼,窄帶高清可以在相同的用戶觀感體驗(yàn)下,節(jié)約30%的帶寬;云剪輯功能可以在線對(duì)視頻進(jìn)行編輯處理;同時(shí)點(diǎn)播服務(wù)提供豐富的數(shù)據(jù)統(tǒng)計(jì),開(kāi)發(fā)者利用阿里云提供的API訪問(wèn)實(shí)時(shí)數(shù)據(jù)。

同時(shí),阿里云也在視頻領(lǐng)域開(kāi)放了AI技術(shù),包括內(nèi)容審核,降低違規(guī)風(fēng)險(xiǎn);智能封面,對(duì)視頻結(jié)構(gòu)化處理和算法選取最優(yōu)視頻幀作為視頻封面;標(biāo)簽預(yù)測(cè),通過(guò)AI來(lái)識(shí)別視頻中文字、圖像、人物等信息,自動(dòng)生成視頻標(biāo)簽等。
基于短視頻業(yè)務(wù)產(chǎn)生的海量數(shù)據(jù),阿里云也提供了高可靠、強(qiáng)安全、低成本的存儲(chǔ)服務(wù)。
CDN高級(jí)技術(shù)專家周哲: 深度剖析短視頻分發(fā)過(guò)程中的用戶體驗(yàn)優(yōu)化技術(shù)點(diǎn)

為了應(yīng)對(duì)短視頻大規(guī)模的業(yè)務(wù)需求,阿里云CDN建設(shè)了大量的基礎(chǔ)設(shè)施。

首先,阿里云CDN擁有全球1200多個(gè)節(jié)點(diǎn),分布在全球各個(gè)國(guó)家和地區(qū),貼近用戶部署,使用戶更快速的訪問(wèn)視頻內(nèi)容,使視頻體驗(yàn)更好。同時(shí),為了面對(duì)業(yè)務(wù)的突發(fā)流量,阿里云提供了超過(guò)80TB的帶寬儲(chǔ)備,為持續(xù)增長(zhǎng)的業(yè)務(wù)保駕護(hù)航。并且,單節(jié)點(diǎn)緩存容量超過(guò)1PB,通過(guò)提供更大的緩存空間,來(lái)提升用戶訪問(wèn)速度。
 
介紹完了解決方案之后,周哲老師又為大家介紹了阿里云在短視頻領(lǐng)域的一些優(yōu)化技術(shù)。

短視頻用戶體驗(yàn)關(guān)鍵指標(biāo)
短視頻用戶體驗(yàn)的關(guān)鍵指標(biāo)有首屏?xí)r間、播放卡頓和播放錯(cuò)誤。

首屏?xí)r間是指在視頻穩(wěn)定播放期間,從用戶點(diǎn)擊播放到視頻開(kāi)始播放之間的時(shí)間差。首屏?xí)r間越長(zhǎng),會(huì)導(dǎo)致用戶提前結(jié)束播放。
播放卡頓是指在播放過(guò)程中的不流暢情況,會(huì)嚴(yán)重影響用戶體驗(yàn)。
播放錯(cuò)誤是指用戶播放視頻時(shí)沒(méi)有成功播放,或出現(xiàn)異常導(dǎo)致提前中斷。


用戶體驗(yàn)優(yōu)化剖析

為了解決這些問(wèn)題,我們對(duì)整個(gè)架構(gòu)進(jìn)行剖析。
首先,終端用戶使用阿里云提供的視頻SDK來(lái)請(qǐng)求調(diào)度服務(wù)器,調(diào)度服務(wù)器返回對(duì)應(yīng)的節(jié)點(diǎn)IP,然后播放器通過(guò)CDN的節(jié)點(diǎn)IP來(lái)請(qǐng)求資源,CDN的邊緣節(jié)點(diǎn)如果有緩存的話可以從本地發(fā)給播放器,如果沒(méi)有緩存就去二級(jí)節(jié)點(diǎn)進(jìn)行訪問(wèn),二級(jí)節(jié)點(diǎn)沒(méi)有緩存會(huì)去OSS或者用戶源站拉取數(shù)據(jù)。
CDN高級(jí)技術(shù)專家周哲: 深度剖析短視頻分發(fā)過(guò)程中的用戶體驗(yàn)優(yōu)化技術(shù)點(diǎn) 
阿里云CDN有一級(jí)節(jié)點(diǎn)、二級(jí)節(jié)點(diǎn)的緩存,二級(jí)節(jié)點(diǎn)的作用是:
第一,做資源收斂,避免相同請(qǐng)求同時(shí)回源,減少源站壓力
第二,離邊緣節(jié)點(diǎn)接近,在邊緣節(jié)點(diǎn)沒(méi)命中的時(shí)候,能夠更快的從二級(jí)節(jié)點(diǎn)獲取到數(shù)據(jù)
第三,提供更大的存儲(chǔ)空間,提高命中。

同時(shí),阿里云對(duì)于整個(gè)播放過(guò)程,進(jìn)行一些用戶體驗(yàn)相關(guān)的數(shù)據(jù)打點(diǎn),通過(guò)這些數(shù)據(jù)來(lái)進(jìn)行分析,得到了一些優(yōu)化點(diǎn)。

第一就是播放器,播放器是否優(yōu)化決定了終端用戶的觀看質(zhì)量。首先,我們對(duì)播放器SDK做了相關(guān)優(yōu)化,比如,通過(guò)減少首次緩沖時(shí)間,可以設(shè)置在受到視頻第一個(gè)P幀就開(kāi)始解碼播放;提供動(dòng)態(tài)緩存大小,當(dāng)出現(xiàn)網(wǎng)絡(luò)抖動(dòng)的時(shí)候,可以動(dòng)態(tài)增加緩存大小,對(duì)數(shù)據(jù)進(jìn)行預(yù)加載,通過(guò)這種方式來(lái)降低卡頓率;針對(duì)播放錯(cuò)誤,播放器SDK實(shí)現(xiàn)了網(wǎng)絡(luò)重試機(jī)制,來(lái)提供播放成功率。

第二個(gè)優(yōu)化是針對(duì)調(diào)度系統(tǒng),用戶在訪問(wèn)邊緣節(jié)點(diǎn)的時(shí)候,訪問(wèn)調(diào)度服務(wù)器,調(diào)度服務(wù)器返回的IP地址是不是最優(yōu)的網(wǎng)絡(luò)鏈路,這個(gè)很大程度上影響用戶對(duì)于視頻的下載速度。阿里云自研了智能調(diào)度系統(tǒng),可以選擇用戶到邊緣節(jié)點(diǎn)的最優(yōu)鏈路,來(lái)反饋給客戶端。

第三是阿里云提供非常多的網(wǎng)絡(luò)節(jié)點(diǎn)覆蓋,讓邊緣節(jié)點(diǎn)距離用戶更近,來(lái)提升用戶訪問(wèn)速度。

第四個(gè)優(yōu)化點(diǎn)是在用戶向CDN服務(wù)器獲取數(shù)據(jù)時(shí),當(dāng)出現(xiàn)網(wǎng)絡(luò)抖動(dòng)的時(shí)候,會(huì)有下載速度降低情況產(chǎn)生,阿里云CDN針對(duì)TCP協(xié)議棧進(jìn)行優(yōu)化,通過(guò)更高效的協(xié)議棧算法來(lái)提升下載速度。

第五個(gè)優(yōu)化點(diǎn)是開(kāi)發(fā)者可以使用阿里云提供的窄帶高清功能,來(lái)降低播放視頻的帶寬。

第六是用戶在訪問(wèn)邊緣節(jié)點(diǎn)的時(shí)候,如果請(qǐng)求在邊緣節(jié)點(diǎn)MISS會(huì)直接回源,應(yīng)時(shí)間變慢,而如果邊緣節(jié)點(diǎn)命中,用戶的下載的速度就和邊緣節(jié)點(diǎn)緩存服務(wù)器的性能具有強(qiáng)關(guān)聯(lián)性了,阿里云針對(duì)緩存服務(wù)器的性能做了很多優(yōu)化,通過(guò)加大邊緣服務(wù)器的空間和智能優(yōu)化,來(lái)提升訪問(wèn)速率。

第七,阿里云也支持全鏈路監(jiān)控,來(lái)提早發(fā)現(xiàn)問(wèn)題,針對(duì)性優(yōu)化,確保穩(wěn)定服務(wù)


智能調(diào)度系統(tǒng)優(yōu)化

這里詳細(xì)介紹一下智能調(diào)度的優(yōu)化,針對(duì)調(diào)度系統(tǒng),阿里云做了五個(gè)方面的優(yōu)化,第一個(gè)是精準(zhǔn)的IP數(shù)據(jù)庫(kù)會(huì)持續(xù)更新,基于第三方IP庫(kù)數(shù)據(jù)、whois平臺(tái)和淘寶手機(jī)用戶在訪問(wèn)數(shù)據(jù)時(shí)的一些經(jīng)緯度信息,會(huì)對(duì)IP庫(kù)進(jìn)行主動(dòng)探測(cè),基于這些維度的數(shù)據(jù),進(jìn)行計(jì)算和生成。IP庫(kù)數(shù)據(jù)的準(zhǔn)確性會(huì)對(duì)調(diào)度系統(tǒng)提供數(shù)據(jù)支撐。

第二個(gè)是提供HTTPDNS服務(wù),用戶通過(guò)localdns請(qǐng)求調(diào)度服務(wù)器,會(huì)遇到第一個(gè)問(wèn)題是:localdns和用戶ip位置有不匹配問(wèn)題,會(huì)出現(xiàn)基于localdns調(diào)度時(shí),調(diào)度系統(tǒng)看到的客戶端ip和用戶真實(shí)ip不一致,導(dǎo)致調(diào)度不準(zhǔn)確
第二個(gè)問(wèn)題是:用戶查詢dns服務(wù)器時(shí),在查詢過(guò)程中會(huì)出現(xiàn)dns結(jié)果被串改的情況。通過(guò)httpdns服務(wù),可以解決由于localdns和ip地址不匹配問(wèn)題,同時(shí)也可以做到dns結(jié)果防串改,使調(diào)度更精準(zhǔn)。播放器基于httpdns對(duì)dns查詢做預(yù)加載,并對(duì)結(jié)果做緩存,減少dns查詢查詢帶來(lái)的首屏?xí)r間慢。

第三點(diǎn)是基于用戶體驗(yàn)的自動(dòng)化調(diào)度,會(huì)基于用戶的客戶端IP以及用戶到每個(gè)節(jié)點(diǎn)的網(wǎng)絡(luò)情況、當(dāng)前各個(gè)節(jié)點(diǎn)的狀態(tài),來(lái)進(jìn)行計(jì)算,通過(guò)一些機(jī)器學(xué)習(xí)的方式,來(lái)預(yù)測(cè)用戶到哪個(gè)節(jié)點(diǎn)的網(wǎng)絡(luò)鏈路為最優(yōu)。這樣就確保給用戶IP地址返回最優(yōu)的網(wǎng)絡(luò)鏈路。

第四個(gè)是大數(shù)據(jù)分析,選擇最優(yōu)節(jié)點(diǎn)。通過(guò)當(dāng)前節(jié)點(diǎn)覆蓋情況和用戶訪問(wèn)流量趨勢(shì),進(jìn)行數(shù)據(jù)預(yù)測(cè),去選擇在哪里建點(diǎn),并且去計(jì)算這些節(jié)點(diǎn)覆蓋哪些用戶的網(wǎng)絡(luò)質(zhì)量是最優(yōu)的,為調(diào)度系統(tǒng)提供數(shù)據(jù)支撐。

最后一點(diǎn)是基于內(nèi)容調(diào)度,通過(guò)302做內(nèi)容粒度的調(diào)度,把相同URL調(diào)度到同一臺(tái)機(jī)器上,提高命中率。


緩存性能優(yōu)化
阿里云CDN針對(duì)緩存系統(tǒng)也做了很多優(yōu)化。
通過(guò)自研的緩存系統(tǒng),開(kāi)發(fā)基于裸盤(pán)的緩存系統(tǒng)。使用內(nèi)存、SSD、SATA三級(jí)緩存架構(gòu),把最熱的資源存儲(chǔ)到內(nèi)存中,次熱的資源存儲(chǔ)在SSD中,冷的資源存儲(chǔ)在SATA中,并且通過(guò)熱點(diǎn)遷移的方式,把SATA中熱的資源遷移到內(nèi)存和SSD中,再通過(guò)淘汰算法,把內(nèi)存和SSD中的冷的資源淘汰到SATA盤(pán)中。通過(guò)這種方式,提供內(nèi)存和SSD的命中率,降低SATA盤(pán)的IO讀寫(xiě)情況,來(lái)存儲(chǔ)更多的冷資源,提高邊緣節(jié)點(diǎn)利用率。同時(shí),自研的文件系統(tǒng)對(duì)IO操作做了很多優(yōu)化,比如說(shuō)合并IP對(duì)齊寫(xiě)入功能,避免內(nèi)存碎片和磁盤(pán)碎片帶來(lái)的IO性能嚴(yán)重下降。對(duì)大文件進(jìn)行切片存儲(chǔ),分片存儲(chǔ)到不同磁盤(pán)中,避免因單個(gè)視頻文件過(guò)熱導(dǎo)致磁盤(pán)性能下降。
通過(guò)以上的優(yōu)化措施,緩存的平均命中率在95%以上,首字節(jié)時(shí)間低于10ms。
CDN高級(jí)技術(shù)專家周哲: 深度剖析短視頻分發(fā)過(guò)程中的用戶體驗(yàn)優(yōu)化技術(shù)點(diǎn) 


基于用戶體驗(yàn)的TCP協(xié)議棧優(yōu)化

第一個(gè)優(yōu)化點(diǎn)是基于時(shí)間序的丟包發(fā)現(xiàn)機(jī)制,主要是在TCP協(xié)議棧里去分析TCP發(fā)包的時(shí)間序列,然后能夠識(shí)別出哪些包丟掉了,快速發(fā)現(xiàn)丟包和快速重傳。
第二個(gè)優(yōu)化點(diǎn)是主動(dòng)丟包發(fā)現(xiàn)機(jī)制,是指我們?cè)诎l(fā)現(xiàn)包的時(shí)候去主動(dòng)探測(cè),避免通過(guò)超時(shí)來(lái)發(fā)現(xiàn)丟包,減少丟包發(fā)現(xiàn)的時(shí)間,提高進(jìn)行重傳
第三個(gè)是自適應(yīng)的初始化窗口,針對(duì)不同業(yè)務(wù)場(chǎng)景使用不同初始化窗口大小。
第四個(gè)是更激進(jìn)的擁塞避免算法,針對(duì)網(wǎng)絡(luò)不好的情況,在協(xié)議棧中識(shí)別狀態(tài),使用更激進(jìn)的發(fā)包策略,解決下載速度慢的問(wèn)題。
第五個(gè)優(yōu)化點(diǎn)是使用更小的鏈接超時(shí)時(shí)間,來(lái)更早的發(fā)現(xiàn)丟包。

基于以上的優(yōu)化,我們使用第三方檢測(cè)平臺(tái),對(duì)某短視頻業(yè)務(wù)1.2M文件,和其他CDN廠商做性能對(duì)比測(cè)試,相同文件大小從內(nèi)容下載時(shí)間上看,使用阿里云CDN有2%-6%的性能提升。其余數(shù)據(jù)也表現(xiàn)優(yōu)異。
CDN高級(jí)技術(shù)專家周哲: 深度剖析短視頻分發(fā)過(guò)程中的用戶體驗(yàn)優(yōu)化技術(shù)點(diǎn) 

歡迎大家來(lái)使用阿里云點(diǎn)播服務(wù)、CDN和OSS存儲(chǔ),來(lái)搭建短視頻應(yīng)用。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI