🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 热部署 就是在不中断当前服务的前提下,进行升级; ## 流程 1. 将旧的nginx文件(主程序文件,二进制的)替换成新的nginx文件;配置文件和目录结构是不能改变的,否则要进行其它的操作; 2. 向master进程发送USR2信号; 3. master进程修改PID文件,加后缀.oldbin(里面存放的是旧master的pid); 4. master进程用新的nginx文件启动新的master进程(此时新旧master同时存在); 5. 向旧的master进程发送WINCH信号,旧的work子进程退出; ## 回滚 1. 回滚情形:向旧master发送HUP(重新读取配置文件,拉起work子进程),向新的master发送QUIT(当新版本不得预期的时候); ![](https://img.kancloud.cn/d8/a4/d8a47ef4c98561123e835b12b74876bf_2722x1356.png)