在多台FMS伺服器之間共用流

在多台FMS伺服器之間共用流

FMS有一個非常重要的功能,那就是可以在多台伺服器之間共用流, 利用這一功能,我們可以把源伺服器上的流分發到其他的伺服器,這些獲得流的伺服器同樣可以作為新的源伺服器使用.這個功能有點象FMS集群.

我們都知道,利用WMP插件可以獲取網上的流媒體位址製作網路電視臺,其實利用Flash和FMS同樣也可以實現.在一台伺服器上採集電視信號,然後將採集的流PUB到IP為127.0.0.1的一個APP(假設是:tvSet)內,假設該流的名稱為”cctv1″, 這樣,連接到該伺服器的FP用戶端可以很輕易地獲取該流.但連接數一多,伺服器可能就會負擔過重,這時就要開始考慮分流.分流的方案至少有兩種,一種是利用代理伺服器,一種就是我們要說的在多台伺服器之間共用流了.那怎樣把流分發下去呢?

這第一台源伺服器不用再做任何事情,它只負責接收和PUB電視信號好了,我們另找一台伺服器,在FMS應用程式的main.asc中寫入以下代碼:

//程式啟動時執行

application.onAppStart = function() {
this.myNC= new NetConnection();
this.myNC.onStatus = NC_onStatus;
this.myNC.connect(“rtmp://第一台源伺服器的位址/tvSet”);
};
function NC_onStatus(info){
switch (info.code) {
case “NetConnection.Connect.Success” :
application.myStream = Stream.get(“cctv1”);
application.myStream.onStatus = NS_onStatus;
if (application.myStream){
application.myStream.play(“cctv1”,-2,-1,false,application.myNC);
}
trace(“連接成功!”);
break;
case “NetConnection.Connect.Failed” :
trace(“連接失敗!”);
break;
case “NetConnection.Connect.Rejected” :
trace(“連接失敗!”);
break;
}
}

function NS_onStatus(info){
trace(info.code);
}

這樣新的伺服器就獲取了與第一台源伺服器同樣的流. 用戶端再連接的時候就不必再連接第一台源伺服器而連接到新的源伺服器上,新的源伺服器可以是一台,也可以是多台,這樣就將第一台源伺服器的負擔降到極小.

 

2、被動式:

FMS3新增了一個非常有用的偵聽事件,那就是application.onPublish,利用這個事件,可以很方便的把剛剛發佈到伺服器上的流再轉發到其他伺服器上,在這個過程中,新的伺服器處於被動接收的狀態。

示例代碼:

application.onPublish = function(client, myStream) {
nc = new NetConnection();
nc.connect(”rtmp://10.0.199.5/multiPointPub”);
ns = new NetStream(nc);
ns.attach(myStream);
ns.publish(myStream.name,”live”);

網路安裝Linux

網路安裝Linux系統

  1. 好處:可以取得最新版的Linux OS,網路安裝程式體積小,約17MB,可安裝于USB或SD卡,方便攜帶。
  2. 到此網址:http://unetbootin.sourceforge.net/ 下載usb燒錄程式。
  3. 到此hinet網路下載http://mirror01.idc.hinet.net/CentOS/ 選擇所需要安裝的OS版本。例如要安裝CentOS 5 x86_64版本的網路下載地址為:http://mirror01.idc.hinet.net/CentOS/5/isos/x86_64/CentOS-5.8-x86_64-netinstall.iso
  4. 於hinet IDC網站上的版本一直維持最新版,若需要舊版,則需到CentOS或其他作業系統的主站下載。
  5. 下載後,執行unetbootin程式,

若使用x86_64必須選擇_x64,會自動從網路上下載檔案後安裝,或者

輸入iso檔位置,iso檔案選擇已下載的開機iso檔案,因為要作為網路安裝,所以採用CentOS-5.8-x86_64-netinstall.iso這個檔案。之後再選擇所要安裝的USB隨身碟,切記,安裝之前先將此隨身碟予以FORMAT。因此程式只有支援到CentOS 5,所以必須留意。

 

  1. 製作此USB完成後即可拿到伺服器進行安裝。于伺服器必須確認可以由USB進行開機,可以進到BIOS進行設定,或者由BIOS所提供的開機選項,選擇使用USB進行開機。
  2. 開機後執行Linux開機選項,即可載入iso所提供的Linux安裝程式。
  3. 開機後,因無法使用滑鼠,可利用上下鍵選擇項目,然後再用TAB來切換到OK或Back或Cancel項目。
  4. 語言選擇“English”,Keyboard Type選擇us,Installation Method選擇http

10. Configure TCP/IP選項,保留Enabled IPv4 support, Dynamic IP configuration (DHCP) (如果網路有支援DHCP,否則必須選擇Manual Configuration以手動方式設定IP地址); Enable IPv6 support按下space取消此選項。

11. HTTP Setup

Web site name以Hinet為主, mirror01.idc.hinet.net (開頭不須加 http://)

CentOS directory為

CentOS/5/os/i386/  :32-bit CentOS

CentOS/5/os/x86_64/ : 64bit CentOS

其完整目錄如下

32bit

http://mirror01.idc.hinet.net/CentOS/5/os/i386/

64bit

http://mirror01.idc.hinet.net/CentOS/5/os/x86_64/

其他版本可以到 http://mirror01.idc.hinet.net/CentOS查看。

 

12. 完成以上動作後,即開始抓取hinet的程式,進行安裝,

其餘安裝步驟如同光碟安裝相同。

13. 其它例如ubuntu,安裝方式,除了製作USB可採用上述的方式外,可參考此網頁 https://help.ubuntu.com/community/Installation/MinimalCD