nginx修改配置后reload原理初探

版权声明:本文为博主原创文章,未经博主允许不得转载。    https://blog.csdn.net/u012811805/article/details/76849668
前言
nginx启动时,会启动两个进程: 一个是Master进程和worker进程。
改变配置后nginx做的事
1)改变了nginx配置之后,HUP signal的信号需要发送给主进程。
2)主进程首先会检测新配置的语法有效性。
3)尝试应用新的配置 
1.打开日志文件,并且新分配一个socket来监听。
2.如果1失败,则回滚改变,还是会使用原有的配置。
3.如果1成功,则使用新的配置,新建一个线程。新建成功后发送一个关闭消息给旧的进程。要求旧线程优雅的关闭。
4.旧的线程 受到信号后会继续服务,当所有请求的客户端被服务后,旧线程关闭。
图解


修改配置后使用如下命令生效配置
nginx -s reload
1
查看进程情况
从如下进程情况的改变可以知道此时进程1360是 nginx的主进程
修改前ä¿®æ¹å

修改后修改后

猜你喜欢

转载自blog.csdn.net/c630210991/article/details/83660587