Nginx热升级流程和原理详解

使用Nginx时,经常遇到添加新模块或升级Nginx版本。如何做到不停机升级部署?本文将讨论热升级的详细步骤和相关机制。

1.热升级步骤

 热升级大致分为两步,按照新的要求编译好Nginx的二进制文件,通过信号,完成新老进程的平滑过渡,保证升级期间服务可用。

  热升级要升级的部分一般是要添加新的模块或者升级Nginx版本。前者如果是编译第三方模块需要先准备好模块源代码,对于后者需要先下载最近Nginx源码。

  • 第一步:先查看原先编译的参数。-V可以查看编译时的参数。(-v时查看版本)

    在新编译时,要将原有的模块参数也加上,否则原有的模块不会编译进去。

./nginx -V
  • 第二步:开始编译,编译过程和上篇一致,只是增加了要添加模块的参数。
./configure  --add-module=/xx/nginx-xx-moudule --with-compat --with-file-aio  
make

这里通过–add-module可以编译第三方的模块到Nginx。 这里只需要make编译,不要make install安装。

编译完成后的nginx二进制文件在objs目录。一会要用到。

  • 第三步:备份和替换
#先备份二进制执行文件
cd /usr/local/nginx/sbin/
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值