您的位置:首页 > 运维架构 > Nginx

Nginx启动流程

2016-05-06 15:53 441 查看
启动流程图如下:



Nginx启动时框架的处理流程:

(1)在Nginx启动时,首先会解析命令行,处理各种参数。

Nginx是以配置文件作为核心提供服务的。 配置文件nginx.conf的路径。

(2)平滑升级,不重启master进程而启动新版本的Nginx程序。

Nginx是通过环境变量来传递某些信息。

(3)调用ngx_init_cycle方法,初始化。

(4)调用 配置模块 提供的 解析配置项方法。

(5)调用所有NGX_CORE_MODULE核心模块的init_conf方法,让所有核心模块在解析完配置项后做综合性处理。

(6)创建不存在的目录,打开相应文件。

(7)按照listening数组中的每一个ngx_listening_t元素设置socket句柄并监听端口。

(8)调用所有模块的init_module方法,初始化模块。

(9)如果nginx.conf中配置为单进程工作模式:调用ngx_single_process_cycle方法进入单进程工作模式。调用所有模块的init_process方法。单进程工作模式的启动工作至此全部完成。

(10)如果进入master、worker工作模式:master进程启动流程执行完毕。由master进程按照配置文件中的worker进程的数目,启动子进程即调用ngx_start_worker_process方法。调用所有模块的init_process方法。worker进程启动至此全部完成。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: