最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Nginx平滑升級及回滾實驗

 更新時間:2026年05月22日 09:33:01   作者:2301_81637433  
本文主要介紹了Nginx平滑升級及回滾實驗,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

一、實驗核心目的

Nginx是生產環(huán)境中最常用的Web服務器/反向代理,平滑升級/回滾 是為了在不中斷業(yè)務(用戶無感知)的前提下,完成Nginx版本更新或故障回退。如果直接stop/start Nginx,會導致短暫的服務不可用,這在生產環(huán)境是絕對不允許的,本實驗就是解決這個核心問題。

二、實驗整體流程拆解

整個實驗分為3個核心階段:下載新版本源碼→編譯并平滑升級→版本回滾,下面逐階段講解。

1.下載高版本的軟件

[root@Nginx ~]# wget https://nginx.org/download/nginx-1.29.4.tar.gz

2.對于新版本的軟件進行源碼編譯并進行平滑升級

#編譯nginx隱藏版本
[root@Nginx ~]# tar zxf nginx-1.29.4.tar.gz
[root@Nginx ~]# cd nginx-1.29.4/src/core/
[root@Nginx core]# vim nginx.h
#define nginx_version      1029004
#define NGINX_VERSION      ""
#define NGINX_VER          "TIMINGLEE/" NGINX_VERSION
#文件編輯完成后進行源碼編譯即可
[root@Nginx core]# cd ../../
[root@Nginx nginx-1.29.4]# ./configure   --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre --with-stream --with-stream_ssl_module --with-stream_realip_module
[root@Nginx nginx-1.29.4]# make
[root@Nginx nginx-1.29.4]# cd objs/
[root@Nginx objs]# ls
autoconf.err  nginx    ngx_auto_config.h   ngx_modules.c  src
Makefile      nginx.8  ngx_auto_headers.h  ngx_modules.o
[root@Nginx objs]# cd /usr/local/nginx/sbin/
[root@Nginx sbin]# ls
nginx
[root@Nginx sbin]#cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old -p
[root@Nginx sbin]# \cp -f /root/nginx-1.29.4/objs/nginx  /usr/local/nginx/sbin/nginx
[root@Nginx sbin]# ls /usr/local/nginx/logs/
access.log  error.log  nginx.pid
[root@Nginx sbin]# ps aux | grep nginx
root        1643  0.0  0.1  14688  2360 ?        Ss   09:55   0:00 nginx: master process /usr/local/nginx/sbin/nginx
nginx       1644  0.0  0.2  14888  3896 ?        S    09:55   0:00 nginx: worker process
[root@Nginx sbin]# kill -USR2 1643   #nginx master進程id
[root@Nginx sbin]# ps aux | grep nginx
root        1643  0.0  0.1  14688  2744 ?        Ss   09:55   0:00 nginx: master process /usr/local/nginx/sbin/nginx
nginx       1644  0.0  0.2  14888  3896 ?        S    09:55   0:00 nginx: worker process
root        4919  0.0  0.4  14716  7936 ?        S    10:24   0:00 nginx: master process /usr/local/nginx/sbin/nginx
nginx       4921  0.0  0.2  14916  4156 ?        S    10:24   0:00 nginx: worker process
root        4923  0.0  0.1   6636  2176 pts/0    S+   10:25   0:00 grep --color=auto nginx
[root@Nginx sbin]# ls /usr/local/nginx/logs/
access.log  error.log  nginx.pid  nginx.pid.oldbin
#測試效果
[root@Nginx sbin]# nginx -V
nginx version: TIMINGLEE/
built by gcc 11.5.0 20240719 (Red Hat 11.5.0-5) (GCC)
built with OpenSSL 3.2.2 4 Jun 2024
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre --with-stream --with-stream_ssl_module --with-stream_realip_module
#回收舊版本子進程
[root@Nginx sbin]# ps aux | grep nginx
root        1643  0.0  0.1  14688  2744 ?        Ss   09:55   0:00 nginx: master process /usr/local/nginx/sbin/nginx
nginx       1644  0.0  0.2  14888  3896 ?        S    09:55   0:00 nginx: worker process
root        4919  0.0  0.4  14716  7936 ?        S    10:24   0:00 nginx: master process /usr/local/nginx/sbin/nginx
nginx       4921  0.0  0.2  14916  4156 ?        S    10:24   0:00 nginx: worker process
root        4929  0.0  0.1   6636  2176 pts/0    S+   10:27   0:00 grep --color=auto nginx
[root@Nginx sbin]# kill -WINCH 1643
[root@Nginx sbin]# ps aux | grep nginx
root        1643  0.0  0.1  14688  2744 ?        Ss   09:55   0:00 nginx: process /usr/local/nginx/sbin/nginx
root        4919  0.0  0.4  14716  7936 ?        S    10:24   0:00 nginx: master process /usr/local/nginx/sbin/nginx
nginx       4921  0.0  0.2  14916  4156 ?        S    10:24   0:00 nginx: worker process
root        4932  0.0  0.1   6636  2176 pts/0    S+   10:28   0:00 grep --color=auto nginx

3.版本回退|版本回滾

[root@Nginx sbin]# cd /usr/local/nginx/sbin/
[root@Nginx sbin]# cp nginx nginx.new -p
[root@Nginx sbin]# \cp nginx.old  nginx -pf
[root@Nginx sbin]# ps aux | grep nginx
root        1643  0.0  0.1  14688  2744 ?        Ss   09:55   0:00 nginx: master process /usr/local/nginx/sbin/nginx
root        4919  0.0  0.4  14716  7936 ?        S    10:24   0:00 nginx: master process /usr/local/nginx/sbin/nginx
nginx       4921  0.0  0.2  14916  4156 ?        S    10:24   0:00 nginx: worker process

[root@Nginx sbin]# kill -HUP 1643
[root@Nginx sbin]# ps aux | grep nginx
root        1643  0.0  0.1  14688  2744 ?        Ss   09:55   0:00 nginx: master process /usr/local/nginx/sbin/nginx
root        4919  0.0  0.4  14716  7936 ?        S    10:24   0:00 nginx: master process /usr/local/nginx/sbin/nginx
nginx       4921  0.0  0.2  14916  4156 ?        S    10:24   0:00 nginx: worker process
nginx       4963  0.0  0.2  14888  3896 ?        S    10:32   0:00 nginx: worker process
root        4965  0.0  0.1   6636  2176 pts/0    S+   10:32   0:00 grep --color=auto nginx
[root@Nginx sbin]# nginx -V
nginx version: nginx/1.28.1
built by gcc 11.5.0 20240719 (Red Hat 11.5.0-5) (GCC)
built with OpenSSL 3.2.2 4 Jun 2024
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre --with-stream --with-stream_ssl_module --with-stream_realip_module

#回收新版本進程
[root@Nginx sbin]# kill -WINCH 4919
[root@Nginx sbin]# ps aux | grep nginx
root        1643  0.0  0.1  14688  2744 ?        Ss   09:55   0:00 nginx: master process /usr/local/nginx/sbin/nginx
root        4919  0.0  0.4  14716  7936 ?        S    10:24   0:00 nginx: master process /usr/local/nginx/sbin/nginx
nginx       4963  0.0  0.2  14888  3896 ?        S    10:32   0:00 nginx: worker process
root        4969  0.0  0.1   6636  2176 pts/0    S+   10:34   0:00 grep --color=auto nginx

Nginx 信號大全(生產常用)

到此這篇關于Nginx平滑升級及回滾實驗的文章就介紹到這了,更多相關Nginx平滑升級及回滾內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 詳解Nginx反向代理實現會話(session)保持的兩種方式

    詳解Nginx反向代理實現會話(session)保持的兩種方式

    這篇文章主要介紹了詳解Nginx反向代理實現會話(session)保持的兩種方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-08-08
  • Ubuntu使用nginx搭建webdav文件服務器的詳細過程

    Ubuntu使用nginx搭建webdav文件服務器的詳細過程

    今天通過本文給大家分享Ubuntu使用nginx搭建webdav文件服務器的詳細過程,在這小編提示大家在安裝nginx時需要先安裝nginx-full,具體安裝方法跟隨小編一起通過本文學習下吧
    2021-05-05
  • Nginx權限控制文件的預覽和下載方式

    Nginx權限控制文件的預覽和下載方式

    這篇文章主要介紹了Nginx權限控制文件的預覽和下載方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Nginx泛解析到子目錄后自動判斷有無public目錄詳解

    Nginx泛解析到子目錄后自動判斷有無public目錄詳解

    這篇文章主要給大家介紹了關于Nginx泛解析到子目錄后自動判斷有無public目錄的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來跟著小編一起學習學習吧。
    2017-08-08
  • 詳解Nginx如何代理UDP連接

    詳解Nginx如何代理UDP連接

    這篇文章主要為大家介紹了Nginx如何代理UDP連接的實現詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-06-06
  • Nginx搭建Webdav服務的方法步驟

    Nginx搭建Webdav服務的方法步驟

    本文主要介紹了生成自簽名根證書和應用證書,部署Nginx WebDAV服務,并解決瀏覽器訪問網頁驗證證書域名的問題,下面就來介紹一下,感興趣的可以了解一下
    2024-12-12
  • nginx 部署啟動jar包用到的一些命令和流程操作

    nginx 部署啟動jar包用到的一些命令和流程操作

    這篇文章主要介紹了nginx 部署啟動jar包用到的一些命令和流程操作,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-11-11
  • Nginx?處理請求并發(fā)控制的過程分享

    Nginx?處理請求并發(fā)控制的過程分享

    Nginx?作為一款高性能的?Web?服務器和反向代理服務器,在處理請求的并發(fā)控制方面有著出色的表現,這篇文章主要介紹了Nginx?處理請求的并發(fā)控制的過程,需要的朋友可以參考下
    2024-07-07
  • nginx搭建文件服務器(保姆級)

    nginx搭建文件服務器(保姆級)

    我們在工作過程中,有許多大的鏡像或者安裝包等,搭建一個文件服務器,可以高效的儲存文件,本文就來介紹一下nginx搭建文件服務器,感興趣的可以了解一下
    2023-06-06
  • Nginx的405 not allowed錯誤解決方法

    Nginx的405 not allowed錯誤解決方法

    本文主要介紹了Nginx的405 not allowed錯誤解決方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-05-05

最新評論

株洲县| 航空| 资阳市| 辽源市| 灵丘县| 永善县| 资溪县| 海宁市| 双辽市| 吴旗县| 泰安市| 静宁县| 枞阳县| 驻马店市| 游戏| 秀山| 乌兰浩特市| 安化县| 古浪县| 尼勒克县| 牡丹江市| 鱼台县| 都江堰市| 吴川市| 莱州市| 蕲春县| 泗阳县| 鄯善县| 南木林县| 揭西县| 东海县| 微博| 永平县| 南乐县| 子洲县| 镇江市| 安康市| 河津市| 南川市| 安塞县| 察隅县|