流媒體應(yīng)用簡單的來說就是應(yīng)用流技術(shù)在網(wǎng)絡(luò)傳輸上的多媒體文件,而流技術(shù)就是把連續(xù)的影像和聲音信息經(jīng)過壓縮處理后放上網(wǎng)站服務(wù)器,讓用戶一邊下載一邊觀看、收聽,而不需要等整個(gè)壓縮文件下載到自己機(jī)器后才可以觀看的網(wǎng)絡(luò)傳輸技術(shù)。該技術(shù)在使用者端的電腦上創(chuàng)造一個(gè)緩沖區(qū),于播放前預(yù)先下載一段資料作為緩沖,于網(wǎng)絡(luò)實(shí)際連接速度小于播放所耗用資料的速度時(shí),播放程序就會取用這一小段緩沖區(qū)內(nèi)的資料,避免播放的中斷,也是的播放品質(zhì)得以維持。
隨著Web2.0技術(shù)的普及,使網(wǎng)絡(luò)上傳輸?shù)馁Y料不僅僅限于文字和圖形。有許多的視頻應(yīng)用需要在Internet網(wǎng)絡(luò)上點(diǎn)播,它們都要求最大范圍的讓觀眾觀看到高質(zhì)量的節(jié)目,像電視一樣達(dá)到宣傳、廣告或滿足觀眾需求的目的。這就要求系統(tǒng)具備高傳輸率、數(shù)據(jù)同步、數(shù)據(jù)流的分流、高穩(wěn)定性等特征。實(shí)現(xiàn)網(wǎng)絡(luò)的視、音頻傳輸最好的解決方案就是流式媒體的傳輸方式。
在流媒體系統(tǒng)中數(shù)據(jù)流量是非常巨大的,對于視頻點(diǎn)播并發(fā)流的負(fù)載要求非常強(qiáng)大,單一服務(wù)器無法承擔(dān)大量并發(fā)數(shù)據(jù)流的負(fù)載。通常有三種方式來改善這種狀況:升級網(wǎng)絡(luò)帶寬、升級服務(wù)器配置或增加服務(wù)器、用最大的壓縮技術(shù)來壓縮視頻文件。但這三種方式有各自的局限性。升級網(wǎng)絡(luò)帶寬和服務(wù)器的升級一般是同時(shí)進(jìn)行,在短時(shí)間內(nèi)是解一時(shí)之需,但是還是會面臨將來的升級需求,同時(shí)會造成資源浪費(fèi)。甚至?xí)霈F(xiàn)性能卓越的硬件也滿足不了業(yè)務(wù)發(fā)展需求的狀況。通過壓縮視頻文件,是可以相應(yīng)的減輕服務(wù)器的負(fù)擔(dān),但是在當(dāng)今的視頻壓縮技術(shù)中,沒有哪種技術(shù)能把視頻文件的體積變小,還不影響視頻效果的。這樣做,勢必會影響用戶的視覺體驗(yàn),服務(wù)質(zhì)量變低。由于上述問題的存在,負(fù)載均衡機(jī)制應(yīng)運(yùn)而生。
項(xiàng)目概況:
· 如何保證客戶服務(wù)的穩(wěn)定性
流媒體系統(tǒng)中的媒體數(shù)據(jù)以實(shí)時(shí)數(shù)據(jù)流的形式傳輸。與傳統(tǒng)的文件數(shù)據(jù)不同,媒體數(shù)據(jù)流一旦開始傳輸,就必須以穩(wěn)定的速率傳送到客戶端,以保證其平滑地回放,視頻、音頻數(shù)據(jù)流都不能有停滯和間斷。鑒于流媒體服務(wù)以上特性,服務(wù)穩(wěn)定性尤為重要。
· 如何實(shí)現(xiàn)流媒體服務(wù)器集群的高可用性
單臺服務(wù)器的設(shè)置,不可避免會出現(xiàn)“單點(diǎn)故障”,需要進(jìn)行服務(wù)器“容錯(cuò)”。為實(shí)現(xiàn)容錯(cuò),往往在主服務(wù)器旁安置一臺或多臺備份服務(wù)器。但這樣做,平時(shí)只有一臺服務(wù)器工作,其他服務(wù)器處于空閑狀態(tài),無法利用所有服務(wù)器的處理資源,投資得不到充分利用。且當(dāng)出現(xiàn)“峰值堵塞”時(shí),所得到的往往是“多米諾”效應(yīng),即所有服務(wù)器連續(xù)被“堵”至“死”。并且,當(dāng)所有服務(wù)器都損壞時(shí),無法動態(tài)、合理地利用其它資源提供服務(wù)或備份。
· 如何讓硬件設(shè)備發(fā)揮最大的處理能力
流媒體是一個(gè)特殊的網(wǎng)絡(luò)應(yīng)用系統(tǒng),它與一般Web應(yīng)用不同,其最大特點(diǎn)就是需要高速處理并發(fā)視頻流數(shù)據(jù)。流媒體系統(tǒng)對服務(wù)器I/O通道吞吐率要求是極為嚴(yán)格的,其數(shù)據(jù)流量是非常巨大的。流媒體系統(tǒng)對于視頻點(diǎn)播并發(fā)流的負(fù)載要求非常強(qiáng)大,單一服務(wù)器無法承擔(dān)大量并發(fā)數(shù)據(jù)流的負(fù)載。想要合理解決這些問題,升級設(shè)備、改變拓補(bǔ)并不是很有效,相對巧妙的方式是采用負(fù)載均衡技術(shù),用多個(gè)設(shè)備共同完成任務(wù)。針對訪問請求負(fù)載均衡設(shè)備根據(jù)服務(wù)器數(shù)量使用特定的分發(fā)策略進(jìn)行統(tǒng)一分發(fā)調(diào)配,從而使所有的硬件設(shè)備都能發(fā)揮其最大處理能力。
· 如何使整個(gè)系統(tǒng)具有良好的可擴(kuò)展性
隨著物理和應(yīng)用的集中,服務(wù)器上所要處理的數(shù)據(jù)量不斷增大,同時(shí)并發(fā)連接數(shù)量會越來越多。若處理資源不夠,在未超出系統(tǒng)容量時(shí),往往是客戶的請求回應(yīng)越來越慢,可容納的同時(shí)連接數(shù)量逐漸減小,系統(tǒng)性能嚴(yán)重下降。當(dāng)超出系統(tǒng)容量后,系統(tǒng)出現(xiàn)故障導(dǎo)致服務(wù)中斷。為應(yīng)對日益增多的業(yè)務(wù)量,系統(tǒng)的可擴(kuò)展性尤為重要。
網(wǎng)絡(luò)結(jié)構(gòu):
客戶需求:
· 采用負(fù)載均衡設(shè)備對后端的流媒體服務(wù)器集群進(jìn)行連接請求的分配,盡量使各臺流媒體服務(wù)器的負(fù)載均衡,并能進(jìn)行實(shí)時(shí)健康檢查,及時(shí)移除出故障的服務(wù)器。
· 能正確處理同一個(gè)RSTP(Real-Time Streaming Protocol)請求中的TCP和UDP連接。
· 能對同一個(gè)用戶的請求進(jìn)行會話保持,確保用戶使用流媒體服務(wù)的質(zhì)量和流暢性。
· 因?yàn)榱髅襟w應(yīng)用中,上行流量大大小于下行流量,所以需采用直接路由技術(shù)。
梭子魚負(fù)載均衡解決方案:
· 采用兩臺梭子魚服務(wù)器負(fù)載均衡機(jī)LB440的雙機(jī)HA冗余結(jié)構(gòu),實(shí)現(xiàn)對后端多臺流媒體服務(wù)器的實(shí)時(shí)負(fù)載均衡。
· 采用梭子魚LB440特有的負(fù)載均衡算法保證大量的流媒體連接請求負(fù)載實(shí)時(shí)高效均衡。
· 梭子魚LB440對每臺流媒體服務(wù)器的服務(wù)端口進(jìn)行健康檢查,當(dāng)某臺流媒體服務(wù)器發(fā)生故障,則停止該臺設(shè)備的工作,并從整個(gè)負(fù)載均衡隊(duì)列中自動移除。
· SSL卸載和加速:避免SSL加解密運(yùn)算對服務(wù)器造成的額外壓力,提高服務(wù)器的處理能力, 保證HTTPS訪問的高效、安全、可靠。
· 基于應(yīng)用的結(jié)構(gòu),便于以后業(yè)務(wù)系統(tǒng)無縫拓展。性價(jià)比最優(yōu)的解決方案,保護(hù)用戶的投資。
為什么選擇梭子魚:
· 高性能:梭子魚LB440負(fù)載均衡機(jī)提供業(yè)界至強(qiáng)的服務(wù)器負(fù)載均衡性能,支持每秒100,000的新建連接, 900萬的并發(fā)連接。
· 一般來說,流媒體服務(wù)都會使用一個(gè)TCP連接(如RTSP協(xié)議)進(jìn)行帶寬的協(xié)商和流速的控制,通過UDP將流數(shù)據(jù)返回客戶。梭子魚LB440負(fù)載均衡機(jī)擁有IP及Cookie的會話保持功能,保證來自同一客戶的TCP和UDP連接會被轉(zhuǎn)發(fā)到集群中同一臺媒體服務(wù)器,使得媒體服務(wù)準(zhǔn)確無誤地運(yùn)行。普通的NAT技術(shù)由于針對TCP和UDP請求進(jìn)行分開處理,這樣往往會導(dǎo)致兩個(gè)請求分發(fā)到不同服務(wù)器,使會話失敗。
· 梭子魚服務(wù)器負(fù)載均衡機(jī)獨(dú)特的無跳線連接心跳監(jiān)控方式提供快速切換,是集群流媒體服務(wù)這樣的實(shí)時(shí)關(guān)鍵系統(tǒng)所必需的。
強(qiáng)大的安全保護(hù):梭子魚服務(wù)器負(fù)載均衡機(jī)內(nèi)置集成了IPS實(shí)時(shí)安全防護(hù)系統(tǒng),可以檢測并阻擋1000多種入侵攻擊和DOS攻擊。