Nginx控制信号
发布日期:2021-07-01 05:57:16 浏览次数:3 分类:技术文章

本文共 739 字,大约阅读时间需要 2 分钟。

Nginx可以使用信号来控制主进程,nginx启动后默认会将进程号写入nginx.pid中。

Nginx主进程支持的信号:

TERM,INT 快速关闭

QUIT 从容关闭

HUP 重载配置

USR1 重新打开日志文件

USR2 平滑升级可执行程序

WINCH 从容关闭工作进程

Nginx工作进程支持的信号:

QUIT 从容关闭

USR1 重新打开日志文件

Nginx工作进程支持的信号

使用方法:

  1. 等待所有请求结束后关闭服务

    kill -QUIT NGINX主进程号

  2. 立刻关闭主进程

    kill -TERM NGINX主进程号

  3. 重新加载新的配置文件

    kill -HUP NGINX主进程号

  4. 平滑升级二进制文件

    kill -USR2 NGINX主进程号

重点:平滑升级二进制文件的内部流程

  1. 将新的二进制文件nginx替换掉旧的

  2. 当执行kill -USR2 NGINX主进程号后,主进程会将nginx.pid重命名为nginx.pid.oldbin

  3. 然后执行新的nginx二进制文件,启动新的主进程和工作进程

  4. 此时新旧nginx同时在运行,要停用旧的nginx

  5. 执行kill -WINCH 旧的NGINX主进程号,从容停止旧的nginx主进程和工作进程

  6. 此时因旧进程还未关闭监听套接字,仍可恢复旧服务

    (1) 执行kill -HUP 旧的NGINX主进程号,将在不重载配置的情况下启动旧进程

    (2) 执行kill -QUIT 新的NGINX主进程号,从容关闭新工作进程

    (3) 执行kill -TERM 新的NGINX主进程号,关闭新主进程

    (4) 此时nginx.pid.oldbin会改为nginx.pid

  7. 若不打算恢复旧服务,则执行kill -QUIT 旧的NGINX主进程号

转载地址:https://pandora.blog.csdn.net/article/details/100981691 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:GPS控制网精度分级及规范
下一篇:GeoJSON格式规范

发表评论

最新留言

不错!
[***.144.177.141]2024年05月05日 13时25分01秒