国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種流媒體服務(wù)系統(tǒng)分布式架構(gòu)的研究

2018-03-28 22:38:36彭方翔廣東南方新媒體股份有限公司
傳播力研究 2018年20期
關(guān)鍵詞:內(nèi)存服務(wù)器節(jié)點

彭方翔 廣東南方新媒體股份有限公司

從2017年起,以抖音、快手作為領(lǐng)頭羊的短視頻社交類手機(jī)應(yīng)用引領(lǐng)著網(wǎng)絡(luò)視頻行業(yè)的發(fā)展;進(jìn)入2018年,在經(jīng)歷了20個版本迭代和半年近12倍的用戶增長之后,抖音的發(fā)展步入了一個新的階段,抖音實現(xiàn)了自增長[1];到了今年6月,抖音短視頻公布了今年上半年數(shù)據(jù)——日活超過1.5億,月活超過3億[2]。在網(wǎng)絡(luò)視頻業(yè)務(wù)快速發(fā)展的今天,在架構(gòu)設(shè)計時就要充分考慮系統(tǒng)具有高模塊化、高可靠性和高可擴(kuò)展性的能力。

一、網(wǎng)絡(luò)視頻業(yè)務(wù)系統(tǒng)

(一)業(yè)務(wù)系統(tǒng)分析

非實時網(wǎng)絡(luò)視頻業(yè)務(wù)系統(tǒng)主要包括三個部分:流媒體服務(wù)系統(tǒng)、內(nèi)容分發(fā)網(wǎng)絡(luò)和客戶端軟件。流媒體服務(wù)系統(tǒng)收集原始音視頻數(shù)據(jù),對音視頻數(shù)據(jù)進(jìn)行流化處理后輸出到內(nèi)容分發(fā)網(wǎng)絡(luò),由內(nèi)容分發(fā)網(wǎng)絡(luò)完成對終端用戶的內(nèi)容分發(fā),讓用戶使用播放器觀看點播視頻。

1.常用的流媒體協(xié)議主要有基于HTTP 漸進(jìn)下載的HLS流媒體協(xié)議和基于RTP實時流媒體的RTMP/RTSP協(xié)議。HLS是由蘋果公司開發(fā)的流媒體協(xié)議,與RTP不同,HLS不需要服務(wù)端來提供播放控制,目前在非實時網(wǎng)絡(luò)視頻業(yè)務(wù)中比較流行。

2.內(nèi)容分發(fā)網(wǎng)絡(luò),也叫CDN,負(fù)責(zé)接收客戶端發(fā)送的請求,通過全局和本地負(fù)載均衡系統(tǒng)調(diào)度請求到最接近的網(wǎng)絡(luò)節(jié)點上,將封裝的流媒體分片文件連同索引文件一起發(fā)送給客戶端。目前互聯(lián)網(wǎng)CDN服務(wù)的技術(shù)成熟、適配簡單,主流技術(shù)架構(gòu)是:自有流媒體服務(wù)系統(tǒng)+租用互聯(lián)網(wǎng)CDN服務(wù)。

3.客戶端軟件負(fù)責(zé)確定應(yīng)該請求的具體媒體流,下載索引文件和流媒體分片文件,并在下載后通過拼接分片將流媒體重新展現(xiàn)給用戶。客戶端軟件通常是播放器或者帶有播放器插件的應(yīng)用或瀏覽器。

(二)流媒體服務(wù)系統(tǒng)

流媒體服務(wù)系統(tǒng)作為支撐網(wǎng)絡(luò)視頻業(yè)務(wù)的核心系統(tǒng),其性能決定了網(wǎng)絡(luò)視頻業(yè)務(wù)服務(wù)質(zhì)量。衡量流媒體服務(wù)系統(tǒng),最關(guān)鍵的指標(biāo)是流輸出能力和支持并發(fā)請求的數(shù)量。下面我們以單臺HLS流媒體服務(wù)器為例,分析系統(tǒng)的工作流程。

1.媒體文件注入過程

(1)從硬盤中分段讀取流媒體文件,存儲到內(nèi)存中。

(2)CPU對內(nèi)存中的流媒體文件進(jìn)行解碼、重新編碼、切片、封裝、存儲、索引等流化處理。

(3)處理完的播放列表數(shù)據(jù),放在內(nèi)存;處理完的切片數(shù)據(jù)經(jīng)過,從內(nèi)存寫入硬盤。

2.響應(yīng)訪問請求過程

(1)網(wǎng)絡(luò)Web容器收到訪問請求解包后將播放列表和切片數(shù)據(jù)請求發(fā)到相應(yīng)模塊進(jìn)行索引定位。

(2)播放列表直接從內(nèi)存讀??;切片數(shù)據(jù)從硬盤讀取放入到內(nèi)存。

(3)在Web容器對內(nèi)存中的數(shù)據(jù)打包發(fā)送。

總結(jié)以上兩個過程,推流服務(wù)系統(tǒng)大量消耗的系統(tǒng)硬件資源主要是CPU、內(nèi)存、磁盤I/O和存儲容量。

二、流媒體服務(wù)的分布式架構(gòu)設(shè)計

分布式架構(gòu)主要面對高并發(fā)、高性能和高可用的應(yīng)用場景,通過系統(tǒng)拆分成不同的子系統(tǒng)模塊,具有以下優(yōu)點:(1)模塊間低耦合度,系統(tǒng)整體可靠性高;(2)各模塊利用率高、方便橫向擴(kuò)展;(3)各模塊之間的邊界明確,有利于靈活部署和運維管理。

關(guān)于分布式系統(tǒng),不同的業(yè)務(wù)需求面對的應(yīng)用場景不一樣,使用的架構(gòu)設(shè)計也不一樣。因此,針對網(wǎng)絡(luò)視頻業(yè)務(wù)大并發(fā)量的應(yīng)用場景,結(jié)合流媒體服務(wù)系統(tǒng)功能對CPU處理能力、內(nèi)存、磁盤I/O能力和磁盤容量的要求,選擇把系統(tǒng)分成三個服務(wù)節(jié)點:(1)負(fù)載均衡服務(wù)節(jié)點;(2)流媒體服務(wù)節(jié)點;(3)存儲節(jié)點。

平面4參數(shù)轉(zhuǎn)換屬于兩維坐標(biāo)轉(zhuǎn)換,對于三維坐標(biāo),需將坐標(biāo)通過高斯投影變換得到平面坐標(biāo)再計算轉(zhuǎn)換參數(shù)[9]。

(一)負(fù)載均衡節(jié)點

負(fù)載均衡節(jié)點主要解決大量用戶回源數(shù)據(jù)的請求分配到HLS服務(wù)節(jié)點的多臺服務(wù)器上。負(fù)載均衡分為四層和七層,四層負(fù)載均衡主要基于TCP協(xié)議,可以做任何基于TCP/IP協(xié)議的軟件的負(fù)載均衡;七層負(fù)載均衡,又叫反向代理,基于HTTP、RTMP協(xié)議實現(xiàn)web服務(wù)、圖片、視頻等靜態(tài)文件的訪問服務(wù)。從軟件層面實現(xiàn)負(fù)載均衡的主流工具 有Nginx(七 層)、Haproxy(四 層)和LVS(四層)等。

1. Nginx

Nginx作為一種高性能的Web和反向代理服務(wù),Nginx以支持高并發(fā)連接、低資源消耗、部署運維簡單等優(yōu)點而聞名。對于請求視頻內(nèi)容這一類靜態(tài)服務(wù),Nginx以多連接對應(yīng)一個進(jìn)程的異步非阻塞請求處理能夠支持更多的并發(fā)請求。Nginx還具有多種負(fù)載均衡算法實現(xiàn)不同的調(diào)度功能[3]。

2.虛擬路由冗余協(xié)議(VRRP)

負(fù)載均衡節(jié)點作為用戶訪問的第一節(jié)點,必須具備高可用性,這就需要在節(jié)點上部署多臺負(fù)載均衡服務(wù)器來集群。目前,較多使用VRRP來把幾臺路由設(shè)備聯(lián)合組成一臺虛擬的路由設(shè)備,保證當(dāng)主機(jī)的下一跳設(shè)備出現(xiàn)故障時,可以及時再次選擇新路由器來接替業(yè)務(wù),保持了內(nèi)部網(wǎng)絡(luò)和外部網(wǎng)絡(luò)通訊的連續(xù)性和可靠性。

(二)流媒體節(jié)點

因為有了負(fù)載均衡節(jié)點,HLS服務(wù)節(jié)點在響應(yīng)請求過程變得簡單了許多,只需要由Nginx來分配訪問請求即可。HLS服務(wù)節(jié)點的大部分硬件資源可以用來承擔(dān)媒體文件注入的任務(wù)。

通常,HLS服務(wù)節(jié)點上游的媒資管理平臺通過接口方式以FTP注入點播媒資數(shù)據(jù)、以UDP注入直播媒資數(shù)據(jù)。根據(jù)機(jī)械磁盤小文件讀寫性能非常低,所以通常選擇把m3u8文件放入內(nèi)存,把TS文件放入磁盤。

(三)存儲節(jié)點

流媒體服務(wù)系統(tǒng)中切片文件數(shù)據(jù)占了所有數(shù)據(jù)的95%以上。一套注入了10萬小時時長視頻的流媒體服務(wù)系統(tǒng),切片文件的數(shù)據(jù)量就有幾百T。因此采用由“緩存節(jié)點+共享式存儲節(jié)點”的兩級存儲架構(gòu),能夠提高推流服務(wù)系統(tǒng)的整體效率和穩(wěn)定性,便于節(jié)點擴(kuò)容。

1.緩存節(jié)點

部署在負(fù)載均衡節(jié)點上的Nginx還有一個重要功能--緩存。Nginx能夠?qū)蛻粢呀?jīng)訪問過的內(nèi)容在本地建立副本,這樣在一段時間內(nèi)(該時間長度可配置)再次訪問該數(shù)據(jù),就不用再次向HLS服務(wù)節(jié)點發(fā)出請求。同時,當(dāng)后端服務(wù)器宕機(jī)時,Nginx服務(wù)器上的副本資源還能夠回應(yīng)相關(guān)的用戶請求,在一定程度上提高了系統(tǒng)整體的魯棒性。

2.網(wǎng)絡(luò)附屬存儲(NAS)

NAS作為一種特殊的專用數(shù)據(jù)存儲服務(wù)器,包括可熱插拔存儲器件和內(nèi)嵌文件讀取系統(tǒng),能夠支持多種訪問協(xié)議,目前廣泛應(yīng)用于各種信息系統(tǒng)中。通過把NAS掛載在HLS服務(wù)節(jié)點的服務(wù)器下,存儲所有注入媒資文件的切片文件,既滿足了大量數(shù)據(jù)的存儲要求,又具有良好的系統(tǒng)擴(kuò)展能力。

三、結(jié)語

本文從當(dāng)前網(wǎng)絡(luò)視頻快速變化的業(yè)務(wù)場景出發(fā),提出“負(fù)載均衡節(jié)點+HLS服務(wù)節(jié)點+存儲節(jié)點”的架構(gòu)以建設(shè)高模塊化、高可靠性和高可擴(kuò)展性的流媒體服務(wù)系統(tǒng)。圍繞該架構(gòu)的實現(xiàn),本文進(jìn)行了解決方案的分析和選擇,討論了利用Ningx軟件同時實現(xiàn)把負(fù)載均衡節(jié)點和緩存節(jié)點、利用VRRP實現(xiàn)負(fù)載均衡主備、利用NAS提供大容量存儲等實現(xiàn)方法,提供了技術(shù)上的探索,具有重要意義。

猜你喜歡
內(nèi)存服務(wù)器節(jié)點
CM節(jié)點控制在船舶上的應(yīng)用
Analysis of the characteristics of electronic equipment usage distance for common users
基于AutoCAD的門窗節(jié)點圖快速構(gòu)建
通信控制服務(wù)器(CCS)維護(hù)終端的設(shè)計與實現(xiàn)
“春夏秋冬”的內(nèi)存
得形忘意的服務(wù)器標(biāo)準(zhǔn)
計算機(jī)網(wǎng)絡(luò)安全服務(wù)器入侵與防御
抓住人才培養(yǎng)的關(guān)鍵節(jié)點
基于內(nèi)存的地理信息訪問技術(shù)
上網(wǎng)本為什么只有1GB?
吉林市| 庆元县| 洪湖市| 兰溪市| 慈利县| 樟树市| 乌拉特前旗| 大丰市| 油尖旺区| 若羌县| 冕宁县| 江陵县| 宜兰市| 遂昌县| 铜梁县| 兰坪| 崇明县| 丰城市| 集贤县| 胶州市| 盐城市| 长治市| 任丘市| 新平| 南投市| 拉孜县| 鹤峰县| 华安县| 深泽县| 潜江市| 饶阳县| 海丰县| 溧阳市| 徐闻县| 台南市| 封丘县| 厦门市| 汉源县| 惠东县| 闵行区| 萨嘎县|