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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 人文社科 > 生活经验 >内容正文

生活经验

Ubuntu 14.04 64bit上编译安装MonaServer并测试

發(fā)布時(shí)間:2023/11/27 生活经验 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Ubuntu 14.04 64bit上编译安装MonaServer并测试 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1.安裝依賴和要求
MonaServer基于C++ 11編寫, 比如會(huì)用到std::thread, std::unique_ptr, 要求GCC版本至少為4.8.2
對(duì)于Ubuntu 14.04.2來(lái)說(shuō), 這是滿足的


另外依賴OpenSSL和LuaJIT庫(kù)
sudo apt-get install libssl-dev
LuaJIT采用源碼安裝方式, 官網(wǎng)地址
http://luajit.org/download.html
推薦從GitHub上面下載最新源碼安裝,master就是當(dāng)前穩(wěn)定版分支,當(dāng)前是LuaJIT-2.0.3

git clone http://luajit.org/git/luajit-2.0.git
我發(fā)現(xiàn)git資源下載失敗,就改為2.0.3版本的源碼包下載
wget http://luajit.org/download/LuaJIT-2.0.3.tar.gz
tar zxf LuaJIT-2.0.3.tar.gz
cd LuaJIT-2.0.3
make
sudo make install

2.下載源碼編譯
git clone https://github.com/MonaSolutions/MonaServer
cd MonaServer
make
如果編譯出錯(cuò), 使用下面的命令清除
make clean
編譯完成后,使用
tree -L 2

我們會(huì)看到如下目錄結(jié)構(gòu)

我們看到除了生成可執(zhí)行文件MonaServer以外, 各個(gè)目錄下面會(huì)生成一個(gè)tmp臨時(shí)目錄用來(lái)存放編譯生成的中間文件*.o, 最重要的目錄是MonaServer, 另兩個(gè)目錄MonaBase和MonaCore僅是提供動(dòng)態(tài)庫(kù)調(diào)用.



3.配置
源碼中沒(méi)有發(fā)現(xiàn)配置文件MonaServer.ini, 將會(huì)使用默認(rèn)值. 我們也可以在安裝目錄手動(dòng)生成一個(gè)配置文件MonaServer.ini
MonaServer.ini中配置項(xiàng)解釋:
host: clients和other servers看到的域名或是ip
socketBufferSize: socket接收和發(fā)送緩沖區(qū)字節(jié)大小
threads: Mona線程池線程個(gè)數(shù), 通常等于或是大于CPU的virtual or physic core數(shù), 默認(rèn)會(huì)自動(dòng)探測(cè)CPU核數(shù)
[application]
dir:包含data和www的目錄
[servers]
port:接收其它incoming Servers連接的端口, 否則無(wú)法與其它Servers建立連接.注意Servers之間的連接是unencrypted TCP方式, 該端口應(yīng)該在防火墻內(nèi)部
targets: 啟動(dòng)時(shí)要連接的MonaServer地址, 分號(hào)分隔, 每10秒建立一次連接, url中的query部分包含token,比如
targets=192.168.0.2:1936?name=master&arg=val;192.168.0.3:1936
將會(huì)生成server對(duì)象的動(dòng)態(tài)性質(zhì)server.name,server.arg
[RTMFP]
port: 偵聽(tīng)incoming RTMFP request的端口,默認(rèn)1935
keepaliveServer: servers之間keepalive包周期性發(fā)送的時(shí)間間隔(單位是秒),默認(rèn)15s, 5s-255s都是合法的
[RTMP]
port: 偵聽(tīng)incoming RTMP request的端口,默認(rèn)1935
[HTTP]
port: 偵聽(tīng)incoming HTTP request的端口,默認(rèn)80
timeout: 當(dāng)沒(méi)有數(shù)據(jù)接收時(shí),服務(wù)器kill掉所在connection的最長(zhǎng)時(shí)間, 默認(rèn)7秒
index: HTTP協(xié)議中默認(rèn)的index文件名, 假如指定, 每個(gè)connection將被redirect到此index文件
[WebSocket]
timeout: 當(dāng)沒(méi)有數(shù)據(jù)接收時(shí),服務(wù)器kill掉所在connection的最長(zhǎng)時(shí)間, 默認(rèn)120秒
[logs]
directory: 寫日志文件的目錄,默認(rèn)MonaServer/logs
name: 日志文件名稱, 默認(rèn)log
rotation: 在logs目錄下存放日志文件個(gè)數(shù)

下面是MonaServer.ini的一個(gè)樣本
;MonaServer.ini
socketBufferSize = 114688
[RTMFP]
port = 1985
keepAlivePeer = 10
keepAliveServer = 15
[logs]
name=log
directory=C:/MonaServer/logs

4.啟動(dòng)
MonaServer包含一些啟動(dòng)參數(shù), 命令行選項(xiàng)僅用作開(kāi)發(fā)和測(cè)試情況下, 查看完整的啟動(dòng)參數(shù), 使用

sudo ./MonaServer -h


下面以管理員權(quán)限啟動(dòng)MonaServer
sudo ./MonaServer --daemon [--pidfile=/var/run/MonaServer.pid]
下面以命令行方式啟動(dòng)MonaServer:
sudo ./MonaServer --pidfile=/tmp/MonaServer.pid



5.測(cè)試
Flash client使用經(jīng)典的NetConnection方式連接MonaServer
_netConnection.connect("rtmfp://localhost/");
端口默認(rèn)1935, 如果你在MonaServer.ini另有配置,請(qǐng)?zhí)砑釉趌ocalhost之后
下面的路徑參數(shù)允許你連接到要有的Server Application
_netConnection.connect("rtmfp://localhost/myApplication");
下面我們打算測(cè)試MonaServer的功能, 按照MonaServer/FunctionalTests/README.txt的提示, 我們?cè)诳蓤?zhí)行程序所在目錄下面創(chuàng)建兩個(gè)子目錄www和data, 創(chuàng)建相應(yīng)的符號(hào)鏈接
cd /home/taoyx/program/MonaServer/MonaServer
mkdir -p www
mkdir -p data
ln -s /home/taoyx/program/MonaServer/FunctionalTests/www/FunctionalTests? /home/taoyx/program/MonaServer/MonaServer/www/FunctionalTests
ln -s /home/taoyx/program/MonaServer/FunctionalTests/data/FunctionalTests? /home/taoyx/program/MonaServer/MonaServer/data/FunctionalTests
下面啟動(dòng)MonaServer:

sudo ./MonaServer --pidfile=/tmp/MonaServer.pid


在瀏覽器中打開(kāi)
http://localhost/FunctionalTests/FunctionalTests.html
每次點(diǎn)擊一個(gè)測(cè)試項(xiàng)目,運(yùn)行完后,再選擇下一個(gè)測(cè)試項(xiàng)目,再繼續(xù)測(cè)試.目前發(fā)現(xiàn)后面的rtmfp等無(wú)法測(cè)試通過(guò),需要研究源碼,待后續(xù)研究.




最后使用Ctrl+C中斷MonaServer,結(jié)束功能性測(cè)試.


參考文獻(xiàn)
[1].http://blog.chinaunix.net/uid-11344913-id-4976154.html
[2].http://bbs.chinaffmpeg.com/forum.php?mod=viewthread&tid=254&extra=

[3].http://www.monaserver.ovh/installation.html


總結(jié)

以上是生活随笔為你收集整理的Ubuntu 14.04 64bit上编译安装MonaServer并测试的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。