日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

Ubuntu 12.04 64bit或者CentOS 6.3 64bit上搭建OpenRTMFP/Cumulus服务器

發布時間:2023/11/27 生活经验 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Ubuntu 12.04 64bit或者CentOS 6.3 64bit上搭建OpenRTMFP/Cumulus服务器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Ubuntu 12.04 64bit或者CentOS 6.3 64bit上搭建OpenRTMFP/Cumulus服務器
2013-12-25


1.從官網下載源碼包
cd ~/progrom_develop
git clone git://github.com/OpenRTMFP/Cumulus.git
tree -L 2 Cumulus
cd Culumus

現在進入該目錄大致了解一下目錄結構.


注意:
Cumulus是跨平臺的,在生成時,都要先生成CumulusLib,再生成CumulusServer.


2.安裝依賴庫
Cumulus需要依賴OpenSSL, POCO, LuaJIT
下面是他們相關的主頁:
http://pocoproject.org/
http://luajit.org/download.html


在Ubuntu 12.04下執行sudo apt-get install libssl-dev?
或者在CentOS 6.3下面執行
yum -y install openssl-devel
下面的POCO和LuaJIT采用源碼包安裝方式:
wget http://pocoproject.org/releases/poco-1.4.6/poco-1.4.6p2.tar.gz(這個在CentOS 6.3上測試過,注意編譯時間較長)
或者
wget https://github.com/downloads/pocoproject/poco/poco-1.4.5.tar.gz
tar zxf poco-1.4.5.tar.gz
cd poco-1.4.5
./configure
make
sudo make install


wget http://luajit.org/download/LuaJIT-2.0.2.tar.gz
tar zxf LuaJIT-2.0.2.tar.gz
cd LuaJIT-2.0.2
make
sudo make install


cd ../Cumulus


cd CumulusLib
make
cd ../CumulusServer
make


注意清除步驟剛好反過來:
cd CumulusLib
make clean
cd ../CumulusServer
make clean


3.配置并啟動
在安裝目錄CumulusServer下面新增一個CumulusServer.ini文件來進行個性化配置,下面是可能的配置選項:
port: 默認1935, RTMFP server的默認端口,用于Cumulus server偵聽進來的RTMFP請求
udpBufferSize:指定UDP接收和發送緩存的字節大小,假如你的OS的默認值小于重要的負載值,增加它的大小
threads: 指定Cumulus中線程池中線程個數,通常應大于或等于主機CPU的核數,默認會自動探測這個值,但是可能在具有CPU超線程技術的機器,或是在某些操作系統上有瑕疵.
keepAliveServer:服務器間周期性發送keep-alive保活包的秒數,默認15秒,合法值為5秒到255秒
keepAlivePeer:peer間周期性發送keep-alive保活包的秒數,默認10秒,合法值為5秒到255秒
publicAddress:客戶端看到的外網地址,便于客戶端重定向
servers.port: 接收進來的服務器連接的端口,注意服務器間的交互采用非加密的TCP通信,要確保安全,使用防火墻
servers.targets:在啟動時要連接的CumulusServer地址列表(分號分隔),
smtp.host:配置SMTP主機去使用Cumulus提供的mail功能,默認localhost
smtp.port:配置SMTP端口去使用Cumulus提供的mail功能,默認25
smtp.timeout:配置SMTP超時會話的秒數去使用Cumulus提供的mail功能,默認60秒
logs.directory:寫日志文件的目錄,默認CumulusServer/logs
logs.name:日志文件的名稱,默認log

下面是一個配置文件樣例,它和CumulusServer放在相同的目錄下面:
;CumulusServer.ini
port = 1985?
udpBufferSize = 114688
keepAlivePeer = 10
keepAliveServer = 15
[logs]
name=log
directory=/home/taoyx/program_develop/Cumulus/CumulusServer/logs


啟動CumulusServer:
CumulusServer包含了一些啟動參數,但是默認CumulusServer在生產環境下運行是優化過的,命令行的選項在開發和測試時比較有用.為了得到啟動CumulusServer時的啟動參數的完整描述,請使用如下命令
./CumulusServer --help
或者
./CumulusServer -h


否則,使用管理員權限去使用
./CumulusServer
簡單啟動
sudo ./CumulusServer --daemon
或者
sudo ./CumulusServer --daemon --pidfile=./CumulusServer.pid

啟動后發現在當前目錄下,自動生成了一個www目錄,和pid文件,在上層父目錄生成了logs目錄.


4.基本使用方法
本地Flash Client可以通過如下語句連接
var nc:NetConnection = new NetConnection();
nc.connect("rtmfp://localhost/");
RTMFP默認是采用1935端口,如果你在CumulusServer的配置文件CumulusServer.ini中特別指定了其他端口,比如12345,你必須在URL中明示該端口,請使用如下方式:
nc.connect("rtmfp://localhost:12345/");


5.擴展CumulusServer--Server Application
CumulusServer包含一個很有威力的腳本引擎(使用LUA)來生成你自己的服務器應用,它允許使用靈活的腳本方式去加入你的特定需求來擴展Cumulus的行為.


5.1生成服務器應用
CumulusServer一啟動后,它會在當前目錄生成一個www文件夾作為自己的root目錄,假如事先不存在www的情況下.你可以在該目錄下生成若干子目錄,一個子目錄可以描述一個服務器應用,
當客戶端連接到CumulusServer時,URL的path中指定了要使用的application,比如,如下url:
rtmfp://host:port/myApplication
將在CumulusServer/www/myApplication中搜索對應的application.
首次執行時,CumulusServer在www目錄中生成和執行其中的文件main.lua,然后,當新客戶端到來時,已經被生成的應用將被執行,除非上次main.lua已經被修改.事實上,當你修改main.lua時,對應的
應用將以動態方式重建,無須重啟服務器.
注意:root Application在CumulusServer啟動時創建和啟動,但是,其他的server application在第一個客戶端連接時開始.
啟動CumulusServer后,會在可執行文件的目錄下出現一個www目錄,該目錄的作用,就是作為 Server Application 的默認根目錄。具體的對應關系如下:
rtmfp://host:port/ ? ? ? ? ? ? ? ? ? -> ? ? [CumulusServer folder]/www/main.lua (root application)
rtmfp://host:port/myApplication ? ? ?-> ? ? [CumulusServer folder]/www/myApplication/main.lua
rtmfp://host:port/Games/myGame ? ? ? -> ? ? [CumulusServer folder]/www/Games/myGame/main.lua
另外要提醒的是,如果main.lua文件被修改,則不需要重啟CumulusServer,因為 Server Application 的創建是一種動態的方式。


每個應用由它的path區分,它恰好就是RTMFP URL連接中path部分, 拿上面的例子來說, root application在path中是一個空字符串, 但是另兩個服務器應用的path值分別是/myApplication和
/Games/myGame


下面是一個非常簡單的server application,將它保存為main.lua文件,放到www下面:
function onStart(path)
print("Server application '"..path.."' started")
end
function onStop(path)
print("Server application '"..path.."' stopped")
end


6.與Flash Player交互聯調
先以調試模式重新開啟Cumulus,注意按照ps查找到CumulusServer的進程號,比如4123,再使用
kill -9 4123
殺死Cumulus,再使用下面的命令重啟:
sudo ./CumulusServer --pidfile=./CumulusServer.pid -l8 --dump=all
然后開啟使用Flex Builder生成的flash player(另見后面的博文),我們將會在控制臺看到如下交互信息:


總結

以上是生活随笔為你收集整理的Ubuntu 12.04 64bit或者CentOS 6.3 64bit上搭建OpenRTMFP/Cumulus服务器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。