生活随笔
收集整理的這篇文章主要介紹了
SRS流媒体服务器——Edge集群搭建
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
SRS流媒體服務器——Edge集群搭建
目錄
edge原理dege配置
1. edge原理
SRS的Edge主要解決?條流有?量播放請求的場景,?如?個流有上萬?觀看。
SRS的Edge能對接所有的標準RTMP源站服務器。
Edge?般負載?,SRS?持的并發(fā)?夠跑滿千兆?帶寬了。
Edge的主要應?場景:
CDN/VDN?規(guī)模集群,客戶眾多流眾多需要按需回源。?規(guī)模集群,但是流?較多,需要按需回源。??帶寬低,邊緣服務器強悍,可以使?多層edge,降低上層BGP帶寬。 注意:edge可以從源站拉流,也可以將流轉發(fā)給源站。
即播放edge上的流時,edge會回源拉流;推流到edge上時,edge會直接將流轉發(fā)給源站。 若只需要中轉流給源站,不必?forward,直接使?edge模式即可。
可以直接?持推流和拉流的中轉,簡單快捷。Forward應?于?標服務器是多個,譬如將?路流主動送給多路服務器。edge雖然配置了多臺服務器,但是只?了?臺,有故障時才切換。 注意:優(yōu)先使?edge,除?知道必須?forward,才使?forward。
1. edge基本概念
邊緣edge服務器,就是邊緣直播緩存服務器,配置時指定為remote模式和origin(指定?個或多個源站IP),這個邊緣edge服務器就是源站的緩存了。當?戶推流到邊緣服務器時,邊緣直接將流轉發(fā)給源站。 譬如源站在北京BGP機房,湖南有個 電信ADSL?戶要推流發(fā)布??的直播流,要是直接推流到北京BGP可能效果不是很好,可以在湖南電信機房部署?個邊緣,?戶推流到湖南邊緣,邊緣轉發(fā)給北京源站BGP。 當?戶播放邊緣服務器的流時,邊緣服務器看有沒有緩存,若緩存了就直接將流發(fā)給客戶端。 若沒有緩存,則發(fā)起?路回源鏈接,從源站取數(shù)據(jù)源源不斷放到??的緩存隊列。 即多個客戶端連接到邊緣時,只有?路回源。這種結構在CDN是最典型的部署結構。譬如北京源站, 在全國32個省每個省都部署了10臺服務器,?共就有320臺邊緣,假設每個省1臺邊緣服務器都有 2000?戶觀看,那么就有64萬?戶,每秒鐘集群發(fā)送640Gbps數(shù)據(jù)。?回源鏈接只有320個, 實現(xiàn)了?規(guī)模分發(fā)。 邊緣edge服務器,解決?并發(fā)問題產?的分布式集群結構。SRS的邊緣可以指定多個源站, 在源站出現(xiàn)故障時會?動切換到下?個源站,不影響?戶觀看,具有最佳的容錯性,?戶完全不會覺察。
2. dege配置
1. 編寫SRS源站配置文件
vim conf
/origin
.conf listen
1935;
max_connections
1000;
pid
./objs
/origin
.pid
;
daemon off
; #日志打印在前臺
srs_log_tank console
;
vhost __defaultVhost__
{
}
2. 編寫SRS邊緣配置文件
復制edge.conf
cp conf
/edge
.conf conf
/edge1
.conf
cp conf
/edge
.conf conf
/edge2
.conf
修改conf/edge1.conf配置文件
vim conf
/edge1
.conflisten
19350;
max_connections
1000;
pid objs
/edge1
.pid
;
daemon off
; #日志打印在前臺
srs_log_tank console
;
vhost __defaultVhost__
{cluster
{mode remote
;origin
127.0.0.1:1935;}
}
修改conf/edge2.conf配置文件
listen
19351;
max_connections
1000;
pid objs
/edge2
.pid
;
daemon off
; #日志打印在前臺
srs_log_tank console
;
vhost __defaultVhost__
{cluster
{mode remote
;origin
127.0.0.1:1935;}
}
3. 啟動SRS
啟動SRS源站和邊緣節(jié)點
./objs
/srs
-c conf
/origin
.conf
./objs
/srs
-c conf
/edge1
.conf
./objs
/srs
-c conf
/edge2
.conf
驗證是否啟動成功:ps -ef | grep srs
4. 啟動推流編碼器
推流可以往源站推流,也可以往邊緣節(jié)點推流
源站推流:ffmpeg
-re
-i source
.200kbps
.768x320
.flv
-vcodec copy
-acodec copy
-f flv
-y rtmp
:
邊緣節(jié)點
1推流:ffmpeg
-re
-i source
.200kbps
.768x320
.flv
-vcodec copy
-acodec copy
-f flv
-y rtmp
:
邊緣節(jié)點
2推流:ffmpeg
-re
-i source
.200kbps
.768x320
.flv
-vcodec copy
-acodec copy
-f flv
-y rtmp
:
5. 觀看RTMP流
源站RTMP流地址為:rtmp://8.141.75.248/live/livestream邊緣RTMP流地址為: rtmp://8.141.75.248:19350/live/livestreamrtmp://8.141.75.248:19351/live/livestream 可以用ffplay、VLC或者srs在線播放器
觀看主SRS的流:ffplay rtmp
:
觀看從
1 SRS的流:ffplay rtmp
:
觀看從
2 SRS的流:ffplay rtmp
:
注意:主SRS默認使用1935端口,從SRS使用的是19350,19351端口,需要開啟,不然無法拉流。
總結
以上是生活随笔為你收集整理的SRS流媒体服务器——Edge集群搭建的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。