android 设置 媒体服务器,第三讲:如何掌握媒体服务器的运行情况
不管是自己編譯還是下載,通過前兩章的講解,媒體服務(wù)器是能跑起來了。但如何用好這個(gè)流媒體服務(wù)器?其中一個(gè)指標(biāo)就是,怎么掌握服務(wù)器的運(yùn)行情況!
本文的主要內(nèi)容有:
1.nginx服務(wù)配置的簡(jiǎn)單介紹
2.統(tǒng)計(jì)模塊的使用方法
一、nginx 服務(wù)配置的簡(jiǎn)單介紹
在第一講中,對(duì)nginx配置文件conf/nginx.conf 只給出了一個(gè)最簡(jiǎn)設(shè)置,目的是讓RTMP流媒體服務(wù)器跑起來,當(dāng)時(shí)的配置內(nèi)容是:
#將以下內(nèi)容拷貝到conf/nginx.conf文件中。
#nginx進(jìn)程數(shù),建議設(shè)置為等于CPU總核心數(shù)
worker_processes 2;
#工作模式與連接數(shù)上限
events {
worker_connections 8192;
}
rtmp {
server {
listen 1935;
application myapp {
live on;
}
}
}
接下來,我簡(jiǎn)單介紹一下nginx.conf配置文件中的內(nèi)容,目的是引入統(tǒng)計(jì)模塊時(shí)對(duì)配置文件能有一個(gè)基本的認(rèn)識(shí)。簡(jiǎn)單來說nginx配置文件有六個(gè)區(qū)域,它的內(nèi)容和意義詳見下表:
配置詳情的對(duì)應(yīng)關(guān)系
nginx.conf 六區(qū)域簡(jiǎn)介
通過wiki中的Directives,你能找到更多的信息,比如要開啟"rtmp_auto_push on"的原因。
nginx-rtmp-module Wiki
二、nginx-rtmp-module的統(tǒng)計(jì)模塊
在介紹使用方法之前,我想重申一個(gè)問題,就是統(tǒng)計(jì)模塊存在的價(jià)值是什么?
它的存在是為了讓我們掌握流媒體服務(wù)的運(yùn)行情況:
誰在推流,分辨率是什么?幀率碼率又是什么?
誰在播放,IP是什么?時(shí)間戳是什么?
整體的上下行帶寬是多少?
對(duì)于這些信息,我們既可以通過控制臺(tái)查看直觀的數(shù)據(jù):
管理控制臺(tái)
也可以通過接口查到具體的詳情:
Response
1、rtmp統(tǒng)計(jì)模塊的使用方法
引入統(tǒng)計(jì)模塊的方法比較簡(jiǎn)單,主要是兩步:
克隆代碼,下載stat.xsl文件;
修改配置文件,打開stat服務(wù);
如果對(duì) nginx-rtmp-module 編譯過程不熟悉的,可以參考第二講。如果是下載 nginx rtmp 版的朋友,此時(shí)要做的就是獲取stat.xsl文件,它就在nginx-rtmp-module模塊的根目錄下。
stat.xsl 位置
文件準(zhǔn)備好了,在nginx.conf配置文件中打開stat服務(wù)即可。
#nginx進(jìn)程數(shù),建議設(shè)置為等于CPU總核心數(shù)
worker_processes 2;
#工作模式與連接數(shù)上限
events {
worker_connections 1024;
}
rtmp_auto_push on;
rtmp {
server {
listen 1935;
chunk_size 4096;
application myapp {
live on;
}
}
}
http {
server {
listen 8080;
server_name localhost;
# This URL provides RTMP statistics in XML
location /stat {
rtmp_stat all;
rtmp_stat_stylesheet stat.xsl;
}
location /stat.xsl {
#注意stat.xsl文件的存放位置,支持相對(duì)路徑和絕對(duì)路徑。
root lib/nginx-rtmp-module/;
}
}
}
都做好之后,啟動(dòng)nginx,注意啟動(dòng)時(shí)后臺(tái)有無報(bào)錯(cuò)。一切正常,就可以鍵入:
http://localhost:8080/stat
打開流媒體管理后臺(tái),查看服務(wù)的運(yùn)行情況。
2、數(shù)據(jù)的價(jià)值與管理手段
統(tǒng)計(jì)模塊提供了比較豐富的內(nèi)容,比如在這種情況下:
3端拉流
除了流媒體服務(wù)以外,控制臺(tái)還能提供推拉流的雙端信息:
一個(gè)android推流端;
拉流A(10.59)一個(gè)Mac 用ffplay拉流播放;
拉流B(10.47)一個(gè)PC用瀏覽器拉流播放;
拉流C(10.43)一個(gè)iPhone拉流播放;
即使推流端已經(jīng)下線,我們也能知道誰還在連接著媒體服務(wù)器:
推流下線后的情況
豐富的數(shù)據(jù),讓我們能掌握媒體服務(wù)器的實(shí)時(shí)情況,讓多種管理策略成為可能。nginx rtmp統(tǒng)計(jì)模塊安裝簡(jiǎn)單,使用方便,是控制管理的一種高效手段。
總結(jié)
以上是生活随笔為你收集整理的android 设置 媒体服务器,第三讲:如何掌握媒体服务器的运行情况的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android返回键方法,Android
- 下一篇: android 黑边边框,手机屏幕边缘的