当前位置: 代码网 > 服务器>服务器>Linux > nginx热部署的原理分析:nginx -s reload

nginx热部署的原理分析:nginx -s reload

2025年06月09日 Linux 我要评论
nginx热部署的原理nginx -s reload我们执行这条命令的原因是希望 nginx 不停止服务始终在处理新的请求的同时把 nginx 的配置文件平滑的把旧的 nginx.conf 配置更新为

nginx热部署的原理nginx -s reload

我们执行这条命令的原因是希望 nginx 不停止服务始终在处理新的请求的同时把 nginx 的配置文件平滑的把旧的 nginx.conf 配置更新为新的 nginx.conf 配置。

这样一个功能对于 nginx 非常有必要,但是有时候我们会发现在执行 nginx -s reload 命令后,worker 子进程的数量会变多了,这是因为老的配置运行的 worker 进程长时间没有退出,当使用 stream 做四层反向代理的时候,可能这种场景会更多。

nginx reload流程

  • (1)向 master 进程发送 hup 信号(reload命令)
  • (2)master 进程校验配置文件语法是否正确
  • (3)master 进程打开新的监听端口
  • (4)master 进程用新配置启动新的 worker 子进程
  • (5)master 进程向老 worker 子进程发送 quit 信号
  • (6)老 worker 进程关闭监听句柄,处理完当前连接后结束进程

reload nginx可以两种方式

(1)./nginx -s reload

(2)kill -hup masterpid 即 kill -hup `cat /opt/ngx/logs/nginx.pid`

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com