nginx平滑升级的操作教程

平滑升级概述
nginx方便地帮助我们实现了平滑升级。其原理简单概括,就是:
(1)在不停掉老进程的情况下,启动新进程。
(2)老进程负责处理仍然没有处理完的请求,但不再接受处理请求。
(3)新进程接受新请求。
(4)老进程处理完所有请求,关闭所有连接后,停止。
这样就很方便地实现了平滑升级。一般有两种情况下需要升级nginx,一种是确实要升级nginx的版本,另一种是要为nginx添加新的模块。

升级过程
具体的操作也很简单,如下:

(0)查看当前版本
在存放Nginx的可执行文件的目录下输入:

复制代码代码如下:

./nginx -V 

(1)下载新的Nginx版本并编译。

复制代码代码如下:

wget nginx-1.0.11.tar.gz  
tar zxvf nginx-1.0.11.tar.gz  
cd nginx-1.0.11  
./configure –add-module=/customized_module_0 –add-module=/customized_module_1  
make 

蛙蛙写作 蛙蛙写作

超级AI智能写作助手

蛙蛙写作 51 查看详情 蛙蛙写作

注意不要进行make install

下载:

[root@liuawblizfpws~]#wget *.*.tar.gz (版本号已修改)

解压:

[root@liuawblizfpws ~]#tar zxvf  nginx-0.*.*.tar.gz (版本号已修改)

这里顺便把nginx的版本号修改了,起到一定的安全作用。

修改源码文件:

[root@liuawblizfpws ~]#vim nginx-0.*.*/src/core/nginx.h#define NGINX_VERSION      “*.$.&”   (版本号)#define NGINX_VER          “net/” NGINX_VERSION  (服务器名字)

重新编译之前需要查看之前的nginx的安装信息:

[root@liuawblizfpws ~]#/usr/local/nginx/sbin/nginx -V

得到信息(路径因人而异):

nginx: configure arguments: –user=www –group=www –prefix=/usr/local/nginx –with-http_stub_status_module –with-http_ssl_module

编译,但不安装;在编译目录下的objs目录下的nginx文件即是新的执行文件:

[root@liuawblizfpws nginx-0.*.*]#./configure –user=www –group=www –prefix=/usr/local/nginx –with-http_stub_status_module –with-http_ssl_module[root@liuawblizfpws nginx-0.*.*]#make

备份原有nginx文件:

[root@liuawblizfpws ~]#mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old

将已经编译好的nginx文件复制到相应的执行路径下:

cp ~/nginx-0.*.*/objs/nginx /usr/local/nginx/sbin/nginx

测试,以免不能平滑升级:

[root@liuawblizfpws ~]#/usr/local/nginx/sbin/nginx -tnginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is oknginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

测试通过则将nginx.pid修改为您nginx.pid.oldbin,同时启动新的nginx:

[root@liuawblizfpws ~]#kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`

退出原nginx:

[root@liuawblizfpws ~]#kill -QUIT `cat /usr/loca/nginx/logs/nginx.pid.oldbin`

查验:

[root@liuawblizfpws ~]#curl -I netonline.meHTTP/1.1 200 OKServer: net/*.$.&Date: Thu, 09 Dec 2010 05:13:36 GMT

以上就是nginx平滑升级的操作教程的详细内容,更多请关注创想鸟其它相关文章!

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
在VSCode中配置任务,自动化构建和编译流程
上一篇 2025年11月4日 18:54:54
济南基础教育资源平台登录指南
下一篇 2025年11月4日 18:55:02

相关推荐

发表回复

登录后才能评论
关注微信