亚洲网站免费_国产一区二区三区在线看麻豆 _国产精品毛片一区二区三区 _麻豆精品网站

【技術(shù)干貨】彈性支撐百萬級別直播流的樂視云“月光寶盒”如何煉成?

公司介紹

樂視云計算有限公司(以下簡稱樂視云)是新樂視上市體系中核心業(yè)務版塊之一,負責新樂視體系所有基礎設施服務和云計算服務。樂視云圍繞視頻云和物聯(lián)云兩大方向開展業(yè)務,致力成為領先的家庭互聯(lián)智能娛樂云技術(shù)提供者,以物聯(lián)云為核心創(chuàng)造更智能的家居社區(qū)解決方案。

樂視云在視頻行業(yè)有強大的技術(shù)儲備,在視頻領域中的點播、直播、分發(fā)、媒體技術(shù)、視頻內(nèi)容理解等方面處于行業(yè)領先地位;而物聯(lián)云將圍繞家居安全、智能互聯(lián)、環(huán)境健康等方面提供全部解決方案。

2015年到2017年的2年間,樂視云曾成功服務于除新樂視外上萬家企業(yè)客戶,如熊貓TV、戰(zhàn)旗TV、快手、人人網(wǎng)、鳳凰網(wǎng)、百度視頻、OPPO等大型企業(yè);在廣電領域,樂視云先后與中國藍TV、天府TV、四川網(wǎng)絡廣播電視臺等廣電企業(yè)建立開放型戰(zhàn)略合作,促進新型全媒體產(chǎn)業(yè)融合。2016年曾融資10億人民幣,是樂視生態(tài)第四個獨角獸。

項目背景

在觀看視頻直播中,難免會發(fā)生因為各種打斷而錯過一些精彩片刻的情況,這個時候,如果我們能

【技術(shù)干貨】彈性支撐百萬級別直播流的樂視云“月光寶盒”如何煉成?-DVBCN

快速穿越回去,會是怎樣一種體驗?樂視云“月光寶盒”可以完美彌補遺憾,讓精彩不再錯過。

項目挑戰(zhàn)

“月光寶盒”是樂視云直播 PaaS 平臺的一個重要服務,可以完美解決直播過程中任意時間段的時移回看,也可以在直播結(jié)束后,提供瞬時秒回功能,快速將直播信號轉(zhuǎn)為點播信號進行分發(fā),大幅提升了直播觀看體驗,也同時給直播運營提供了更多的可能。月光寶盒歷經(jīng)三次產(chǎn)研迭代,見證了直播流由萬增至百萬的快速增長,一路上我們遇到了哪些挑戰(zhàn)?直播流的分配策略是如何進化的?源站的切片、索引存儲需要做出哪些升級?以及在持續(xù)迭代過程中如何確保平滑升級等等問題,接下來我們將從“月光寶盒”三次大的版本迭代中做出解答。

月光寶盒 V1.0

直播 PaaS 平臺由原支撐樂視集團業(yè)務的直播后臺技術(shù)部蛻變而成,已經(jīng)持續(xù)服務于樂視網(wǎng)、樂視電視、機頂盒、樂視體育、樂視音樂等超過 5 年時間, 早期的直播流量在萬級別(注:直播流 ID 個數(shù),可以理解為一個直播流就是一路信號),直播信號通常以 7*24 小時長直播為主,發(fā)布會、演唱會等短直播為輔(注:這類短直播無直播內(nèi)容時,通常會配置一個指定的備片來持續(xù)代替直播信號源,以提升斷流時用戶播放體驗),因此在 V1.0 架構(gòu)中,這階段的直播生產(chǎn)調(diào)度分配算法采用簡單的配置策略,將直播流與設備組進行關聯(lián)綁定,直播流對應的切片與索引采用簡單的本地存儲。直播、時移回看、打點錄制均在該組設備中并行提供服務。

V1.0 架構(gòu)圖

注:

綠色表示直播流長期處于使用狀態(tài)。

紫色表示直播信號暫時中斷,但源站配置了播放備片功能,會播放備片信號,提高直播斷流體驗。

【技術(shù)干貨】彈性支撐百萬級別直播流的樂視云“月光寶盒”如何煉成?-DVBCN

附:左圖為正常直播信號,右圖為直播信號中斷時播放的備片。

【技術(shù)干貨】彈性支撐百萬級別直播流的樂視云“月光寶盒”如何煉成?-DVBCN【技術(shù)干貨】彈性支撐百萬級別直播流的樂視云“月光寶盒”如何煉成?-DVBCN

隨著直播 PaaS 平臺的開放,海量直播流的接入,而商業(yè)直播的需求主要以秀場、發(fā)布會等間隔較短的直播為主,此時如果仍按照原有均衡分配直播流策略,每個直播都分配單獨服務器,會導致服務器數(shù)量成倍增加,資源成本陡增,為解決這個問題,月光寶盒架構(gòu)也升級至 V1.1。

月光寶盒 V1.1

在 V1.1 版本中,直播流均按需生產(chǎn),為了確保客戶所接入的流量安全,調(diào)度會同時分配給主備兩臺設備來生產(chǎn)該流,在主節(jié)點故障時自動執(zhí)行主備切換,確保對用戶播放無感知。

隨著業(yè)務的快速增長,日活直播快速上升,平臺對直播源站集群進行了擴容,但由于直播流分配策略會優(yōu)先與時移數(shù)據(jù)綁定(注:該策略為確保全程回看數(shù)據(jù)在同臺設備連續(xù)),因此在實際運行的過程中可能會出現(xiàn)比較嚴重的偏壓問題,會導致比較明顯的熱點問題,需要通過集群上報流監(jiān)控狀態(tài)判斷是否需要對備流進行遷移,以實現(xiàn)集群的再均衡。

【技術(shù)干貨】彈性支撐百萬級別直播流的樂視云“月光寶盒”如何煉成?-DVBCN

V1.1架構(gòu)圖

注:

虛線箭頭表示發(fā)生偏壓時,部分直播流發(fā)生遷移。

綠色表示正在播放的直播流。

紅色表示直播流即將被遷移。

黃色表示直播流被遷移后。

通過流遷移的方式我們緩解了熱點問題,但這種方式有一定的滯后性,我們需要新的架構(gòu)來解決這個問題,在介紹新架構(gòu)方案前,首先快速介紹下直播業(yè)務里面用到一些協(xié)議和文件,HLS(Http Live Streaming)是由 Apple 公司定義的用于實時流傳輸?shù)膮f(xié)議,HLS 基于 HTTP 協(xié)議實現(xiàn),傳輸內(nèi)容包括兩部分,一是 M3U8 描述文件,二是 TS 媒體文件。M3U8 文件是用文本方式對媒體文件進行描述,由一系列標簽組成。

隨著業(yè)務持續(xù)增長,整個直播集群的存儲壓力會變得比較突出,因此需要盡快消除 IO 瓶頸。在此背景下,我們首先將 TS 切片遷移到了 LeS3(樂視云對象存儲系統(tǒng)), 但對于視頻索引的存儲仍然按照主備方式管理,所以下一步重點就變成了尋找存儲 M3U8 的索引集群存儲解決方案,由于不同直播流對切片設置大小不一(通常設置在 2~10s),譬如北京其中一個集群最大峰值寫入約在 3w 左右,業(yè)務屬于寫多讀少,對于傳統(tǒng)主從 RDS 來說,單機無法承受,需要做分庫分表,而分庫分表有很多弊端,比如對業(yè)務侵入太多、應用不友好,普遍的采用 Proxy 方案不但對技術(shù)有要求,而且還有非常多的局限性,視頻直播需要靈活的擴展性,而分庫分表對再擴容的成本非常高,會為業(yè)務埋下隱患。這期間我們接觸到了 TiDB,其支持多活、無單點、支持橫向擴容特性且兼容 MySQL 等特性與我們的業(yè)務需求非常吻合,加之 TiDB 安裝部署、監(jiān)控等細節(jié)做得非常到位,我們決定測試看看效果。

月光寶盒 V1.2

經(jīng)過一周左右對TiDB的常用場景測試、壓測,測試結(jié)果比較符合預期,從存儲容量、QPS、響應時間來看,均可支持我們“快速穿越執(zhí)行時移回看”的需求。測試期間也跟官方的同學進行技術(shù)交流,確定了后續(xù)生產(chǎn)環(huán)境中如:部署架構(gòu)、設備選型、表結(jié)構(gòu)及索引優(yōu)化。在生產(chǎn)環(huán)境的 TiDB 生產(chǎn)集群上線后,我們將線上原有直播流的 HLS 回看的索引在原 V1.1 架構(gòu)進行本地存儲外,同步復制至 TiDB 中,以便于真實生產(chǎn)環(huán)境中來驗證TiDB的穩(wěn)定性。觀察一月多,運行平穩(wěn),期間我們做部分故障演練,如將PD、TiKV、TiDB中某一臺重啟,并未出現(xiàn)服務不可用或丟數(shù)據(jù)的情況!接下來對北京一個直播集群月光寶盒服務進行了試點改造,采用灰度切流方式逐步將直播流的時移、回看、秒回請求切至TiDB ,運行穩(wěn)定。目前全國各地直播集群的月光寶盒服務跑在TiDB服務之上。

【技術(shù)干貨】彈性支撐百萬級別直播流的樂視云“月光寶盒”如何煉成?-DVBCN

v1.2 架構(gòu)圖

附一張 TiDB 在月光寶盒 V1.2 中的架構(gòu)圖:

【技術(shù)干貨】彈性支撐百萬級別直播流的樂視云“月光寶盒”如何煉成?-DVBCN

總結(jié)回顧

前面已將“月光寶盒“歷經(jīng)3個階段詳述,最后我們再用一張表做下簡單的回顧。

【技術(shù)干貨】彈性支撐百萬級別直播流的樂視云“月光寶盒”如何煉成?-DVBCN

上線效果數(shù)據(jù)說明

通過將 M3U8 數(shù)據(jù)統(tǒng)一存儲到一套 TiDB 集群,大幅度簡化直播源站的結(jié)構(gòu),從源頭解決負載偏壓、擴展的問題,同時 TiDB 很好的解決了這類寫多讀少的業(yè)務場景,具體體現(xiàn)如下:

● 單機 HLS 設備生產(chǎn)性能提升 200%。

● 簡化直播流分配調(diào)度策略,消除集群內(nèi)偏壓問題。

● 簡化直播源站結(jié)構(gòu),消除上下游關聯(lián)系統(tǒng)耦合。

● TiDB 天然的高可用提升了系統(tǒng)的可用性。

● 依賴 TiDB 的負載均衡,優(yōu)雅的解決了直播流量彈性擴展的問題。

現(xiàn)狀及計劃

目前月光寶盒 v1.2 已持續(xù)穩(wěn)定的服務于標準直播、移動直播、直播CDN等三大業(yè)務線,其中北京一個核心直播集群的 TiDB 峰值 寫入 QPS 達到 2.5W 左右,經(jīng)過 CDN 及 HLS_Consumer 的雙重緩存后讀請求峰值約在 5k 左右,下一步我們會將直播內(nèi)部的一套數(shù)據(jù)分析系統(tǒng)也遷移到 TiDB中。

大家對“月光寶盒”研發(fā)技術(shù)感興趣,也可以關注樂視云公眾賬號,感興趣同學達到一定數(shù)量后,我們會舉辦一些線下活動進行技術(shù)分享。

單個直播集群對應的 TiDB 集群總體配置如下:

【技術(shù)干貨】彈性支撐百萬級別直播流的樂視云“月光寶盒”如何煉成?-DVBCN

作者簡介:劉斌,樂視云工程師,主要參與樂視直輪播、商業(yè)直播 PaaS 架構(gòu)設計迭代。

招聘

視頻云基礎平臺正在招聘“流媒體研發(fā)/圖像視頻算法/深度學習/JAVA開發(fā)工程師” 感興趣的同學可將簡歷發(fā)送至“wangxiaoyu1@le.com

相關文章
年度復盤丨「視頻云」2020大事件!
年度復盤丨「視頻云」2020大事件!
受違規(guī)擔保案影響 樂視網(wǎng)2019年前三季度虧損百億元
受違規(guī)擔保案影響 樂視網(wǎng)2019年前三季度…
穩(wěn)坐視頻云行業(yè)第一,阿里云將用邊緣計算開辟新賽道
穩(wěn)坐視頻云行業(yè)第一,阿里云將用邊緣計…
中國聯(lián)通攜手新華三等行業(yè)伙伴發(fā)布業(yè)界首個5G-MEC智能視頻云產(chǎn)品,引領5G智慧
中國聯(lián)通攜手新華三等行業(yè)伙伴發(fā)布業(yè)界…
校園安全管理也可引入“視頻云”
校園安全管理也可引入“視頻云”
江西完成首個5G+智能視頻云監(jiān)控實驗點
江西完成首個5G+智能視頻云監(jiān)控實驗點
我還沒有學會寫個人說明!

24小時排行

  • 暫無文章

主站蜘蛛池模板: 屏边| 兴安盟| 三门县| 涿鹿县| 九龙县| 伊川县| 廊坊市| 兰考县| 西昌市| 大姚县| 南丰县| 环江| 宣威市| 黄陵县| 高唐县| 濉溪县| 滨海县| 资中县| 龙岩市| 临武县| 沙湾县| 睢宁县| 巴彦县| 正安县| 刚察县| 白山市| 抚顺县| 珠海市| 兴安县| 县级市| 临泽县| 微博| 甘泉县| 法库县| 水富县| 巧家县| 乌兰县| 武宁县| 攀枝花市| 宜春市| 封丘县|