平滑升级nginx

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了平滑升级nginx相关的知识,希望对你有一定的参考价值。

前言

如果服务器正在运行的nginx要进行升级、添加或删除模块时,我们需要停掉服务器并做相应修改,这样服务器就要在一段时间内停止服务,Nginx可以在不停机的情况下进行各种升级动作而不影响服务器运行。

步骤1:

先用新程序替换旧程序文件,直接编译到Nginx安装目录中。


cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_bak

./configure --user=nobody --group=nobody --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_perl_module

make

make install

步骤2:执行命令

kill -USR2 旧版程序的主进程号或进程文件名

此时旧的Nginx主进程将会把自己的进程文件改名为.oldbin,然后执行新版 Nginx。新旧Nginx会同时运行,共同处理请求。

kill -WINCH 旧版主进程号

这时要逐步停止旧版 Nginx,慢慢旧的工作进程就都会随着任务执行完毕而退出,新版的Nginx的工作进程会逐渐取代旧版 工作进程。

以上是关于平滑升级nginx的主要内容,如果未能解决你的问题,请参考以下文章

Nginx平滑升级版本!

nginx的平滑升级

nginx平滑升级

Nginx平滑升级

Nginx平滑升级

Nginx 的平滑升级