有時,我們需要對我們的伺服器進行升級更高版本。此時,如果我們強行將伺服器停止然後直接升級,這樣原來在伺服器上運行的進程就會被影響。如何解決這個問題呢?可以透過平滑升級的方式來解決。平滑升級時,不會停掉在執行的進程,這些進程會繼續處理請求,但不會再接受新請求,在這些舊進程在處理完還在處理的請求後,停止。在此平滑升級的過程中,新開的進程會處理新要求。
1、查看目前版本
<code>[root<span>@Admin</span><span>/]# cd /opt/nginx/sbin/</span> [root<span>@Admin</span> sbin]<span># ./nginx -V</span> nginx <span>version</span>: nginx/<span>1.8</span><span>.0</span> built <span>by</span> gcc <span>4.8</span><span>.5</span><span>20150623</span> (Red Hat <span>4.8</span><span>.5</span>-<span>4</span>) (GCC) configure <span>arguments</span>: --prefix=<span>/opt/nginx/</span></code>
2、升級到新的版本
<code>下载新版安装包到/tmp目录下 [root<span>@Admin</span> tmp]<span># ls</span> nginx-<span>1.8</span><span>.0</span>.tar.gz nginx-<span>1.9</span><span>.10</span>.tar.gz 解压到当前目录 [root<span>@Admin</span> tmp]<span># tar -zxvf nginx-1.9.10.tar.gz </span>进入解压目录进行以下操作 [root<span>@Admin</span> tmp]<span># cd nginx-1.9.10</span> [root<span>@Admin</span> nginx-<span>1.9</span><span>.10</span>]<span># ./configure </span> [root<span>@Admin</span> nginx-<span>1.9</span><span>.10</span>]<span># make</span>进入已安装的nginx目录下,备份当前使用的nginx [root<span>@Admin</span> nginx-<span>1.9</span><span>.10</span>]<span># cd /opt/nginx/sbin/</span> [root<span>@Admin</span> sbin]<span># cp nginx nginx.old</span> [root<span>@Admin</span> sbin]<span># ls</span> nginx nginx.old 将新版本的编译文件复制到安装目录 [root<span>@Admin</span> sbin]<span># cd /tmp/nginx-1.9.10</span> [root<span>@Admin</span> nginx-<span>1.9</span><span>.10</span>]<span># ls</span> auto CHANGES CHANGES.ru conf configure contrib html LICENSE Makefile man objs README src [root<span>@Admin</span> nginx-<span>1.9</span><span>.10</span>]<span># cp -rfp objs/nginx /opt/nginx/sbin/</span> cp:是否覆盖<span>"/opt/nginx/sbin/nginx"</span>? y 查看是否升级成功 [root<span>@Admin</span> nginx-<span>1.9</span><span>.10</span>]<span># cd /opt/nginx/sbin/</span> [root<span>@Admin</span> sbin]<span># ./nginx -V</span> nginx <span>version</span>: nginx/<span>1.9</span><span>.10</span> built <span>by</span> gcc <span>4.8</span><span>.5</span><span>20150623</span> (Red Hat <span>4.8</span><span>.5</span>-<span>4</span>) (GCC) configure <span>arguments</span>: </code>').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });
以上就介紹了Nginx的平滑升級,包括了方面的內容,希望對PHP教程有興趣的朋友有幫助。