nginx解析rtmp配置项示意流程图
2017-02-20 15:37:22 0 举报
nginx配置加载流程
作者其他创作
大纲/内容
7. 返回成功或失败
1. 解析配置文件
20.合并不同配置块内的同名配置项,看代码比较简单,就不说了。
粉底虚线方框内的行为:ngx的core module(对于rtmp就是ngx_rtmp_module,也就是遇到rtmp配置项时对应的解析该rtmp指令的模块)初始化rtmp系列模块的根ctx的过程。完成之后就开始解析块内的配置项,其他块配置项的解析基本都类似。
6. 调用各rtmp模块的preconfiguration
12.发现server配置项
21.rtmp配置项处理完毕
13. 依次调用各个rtmp模块的create_(srv、app)_conf
16.依此类推,包括app的解析。但是由于一般nginx的配置ctx只有三层,所以app下的解析稍有不同,可以参考结构介绍以及代码很容易分析出来。
8. 开始解析rtmp块下的配置项
ngx_core_module
11.配置项处理完毕
4. 依次调用各个rtmp模块的create_(main、srv、app)_conf
22.配置文件解析完毕
3. 初始化每一个rtmp模块
配置文件解析器
18.server配置项处理完毕
rtmp core module
15.开始解析server块下的配置项
主控模块
ngx_rtmp_core_module
14.返回分配好的内存指针
2. 发现rtmp配置项
19.rtmp配置项处理完毕
ngx_conf_parse
17.server块内的配置项处理完毕
绿底虚线框内其实各ngx系列模块都差不多是这么解析的。
10. 根据cmd的属性取得cmd的ctx或者ctx的地址,调用cmd的回调方法
rtmp系列子module
ngx core module
9. 根据配置项的名字等特性,遍历所有模块的cmd查找
5. 返回分配好的内存指针
ngx_rtmp_module
收藏
0 条评论
回复 删除
下一页