本文介紹如何在阿里雲、騰訊雲等雲主機上搭建流媒體服務器,包括如何選擇雲主機配置、如何選擇帶寬和流媒體服務器軟件選擇等。
流媒體服務器是支撐視頻播出的基礎系統,具有視頻直播、視頻點播的播出能力,有些使用場景下還會承擔轉碼任務,因此,其對雲主機和網絡帶寬的要求要高於Web服務器和數據庫服務器等。
流媒體服務器的搭建一般從雲主機配置、軟件選用、帶寬選擇等幾個方面來考量。 配置的選擇,主要依據對並發播出能力的期望,並發能力可以直接映射到配置的選擇上,我們今天從100並發和1000並發兩個級別來說明。在流媒體服務器軟件選擇合適的情況下,100並發是個很小的並發,1000並發是個中等規模的並發。
雲主機的選配
雲主機可以選擇華為雲通用計算增強型C6s機型或者阿里雲通用平衡增強型g6e機型,這兩種雲主機機型具有通用經濟的特點,並且適用於對計算和網絡性能和穩定性要求較高的場景。
100並發
- CPU 2核心 2.6GHz/3.5GHz
- 內存數量 4GB
1000並發
- CPU 8核心 2.6GHz/3.5GHz
- 內存數量 32GB
操作系統根據選用的流媒體服務器軟件來選擇,如果選用NTV Media Server G3流媒體服務器軟件,則可以選擇CentOS等linux系統。如果選擇Adobe的Flash Media Server,則選擇Windows操作系統。
網絡選配
視頻播出網絡需求跟並發需求直接相關,計算公式如下:
帶寬需求 = 播出碼率 x 並發數
一般720p視頻播出使用800Kpbs 到 1Mbps的碼率,則100並發需要100Mbps的出口帶寬。
注意: 在選用公網帶寬時,有按流量計費和按帶寬計費兩種模式,模式的選擇對您的費用支出會有較大影響。如果您的網絡利用率很高,帶寬占用較高而且穩定,譬如說經常會把100Mpbs帶寬占滿,那您要選擇按帶寬計費。如果您的網絡利用率不是很高,偶爾會有較大並發需求,譬如1個月有幾次大並發的直播,那您一定要選擇按流量計費,這樣最經濟。
由於阿里雲和騰訊雲的雲主機,最大帶寬是200Mbps,因此當並發數大於200時,建議處采用雲主機+CDN的方式來承載。
存儲選配
配置多大的存儲,主要看您要存儲多少視頻資源。由於視頻資源上傳到流媒體服務器后是要進行轉碼壓縮存儲的,因此所需的存儲相對於存儲原始視頻會小得多。
存儲需求計算公式如下:
存儲量 = 播出碼率*播出時長/8
例如,對於一般高清視頻,播出碼率在2Mbps左右,1小時(3600秒)的存儲需求為:
2*3600/8 = 900 MB
可以看到,1個小時的高清視頻經壓縮后,大概占用900MB的存儲,接近1GB。這樣算下來,1000個小時的資源大概需要1TB的存儲。
存儲類型,可以選擇SSD存儲或雲存儲,對於視頻點播業務,存儲吞吐能力很重要,需要核算磁盤讀效率和用戶播出需求的關系,有些流媒體服務器產品(如NTV Media Server G3)會充分利用緩存技術,把常用的數據提前讀入內存,降低對存儲的讀取壓力。
雲存儲可以選用塊存儲或NAS存儲。快存儲的好處是低延時高性能,缺點是不能彈性擴展。NAS存儲的優勢是可彈性擴展,可多機共享。經驗是,在做視頻存儲而且量比較大時盡量選用NAS存儲。如果視頻量比較小,而且后期不會有太多增量,可以選用快存儲。
軟件選配
流媒體服務器的軟件選配是個關鍵,對播出性能的影響至關重要,軟件選擇不好,再好主機和帶寬也很難帶來好的播出效果。推薦如下選擇:
1) NTV Media Server G3
Linux操作系統,性能極高,單節點並發超5000,系統成熟,接口和文檔都比較完善,有較大的用戶群,售后服務好。
2)Adobe Flash Media Server
Windows 操作系統,並發能力能達到1000以上,對rtmp協議支持完善,系統成熟,有較大用戶群,缺點是國內缺少售后支持。
3)SRS
Linux操作系統,單間並發1000以上,開源產品,沒有售后服務。
4)Wowza
Windows \Linux操作系統,宣稱能超過5000並發,實際測試相差較遠,配置和使用比較復雜。產品比較成熟,國內有代理商支持。
轉自:https://zhuanlan.zhihu.com/p/164591806