以前更新我们都要停服务更新,不管什么时候更新,都可能有客户在访问,体验不好,二是如果有数据传输,可能会造成数据丢失。

nginx reload可以不间断更新配置文件,原理就是当我们修改配置文件发起reload命令后,nginx会保持以前的所有连接直到断开,新连接使用新配置,实现无间断切换。

nginx 支持if命令:我们可以将负载均衡中的服务器A指定我们的测试人员打开,其他客户走服务器B,然后我们在服务器A更新或者上架应用,如此反复,最后改为负载均衡完成切换。

步骤:

upstream A{
  server 192.168.3.12;
  server 192.168.3.13;
}

upstream B{
  server 192.168.3.14;
}

1、修改配置文件

if ($remote_addr ~ ^192\.168\.2\.192)

{proxy_pass  http://A;}

proxy_pass  http://B;

2、reload配置文件,查看日志,直到服务器A没有客户连接

3、服务器A更新或上架应用,测试

4、修改配置文件

if ($remote_addr ~ ^192\.168\.2\.192)

{proxy_pass  http://B;}

proxy_pass  http://A;

5、reload配置文件,查看日志,直到服务器B没有客户连接

6、服务器B更新或上架应用,测试

proxy_pass  http://A;

proxy_pass  http://B;

7、reload配置文件,查看日志,直到服务器A、B都有客户访问

最新文章

  1. Bootstrap学习------Tabel
  2. Django base view
  3. maven打包时使用的pom配置
  4. JavaScript探秘系列
  5. MySQL 5.7.9的多源复制
  6. C# winform DataGridView
  7. hdu 5465 Clarke and puzzle 二维线段树
  8. Nexus远程Maven仓库索引下载教程
  9. [每日一题] OCP1z0-047 :2013-08-28 DELETE..........................................................160
  10. Python 学习笔记8
  11. POJ 2449 Remmarguts' Date (第k短路径)
  12. 用webstorm来开发微信小程序之less的配置
  13. POJ 1958 Strange Towers of Hanoi
  14. 基于Arcface 免费离线人脸识别 2.0 Demo C#
  15. jq页面加载分割截图
  16. python初始环境安装
  17. ArcGIS Desktop Python add-ins 插件类型
  18. Sql Server R8 密码问题及5102错误
  19. Build path entry is missing: config 引起的 The project: configwhich is referenced by the classpath, does not exist.
  20. C# 按部门拆分excel文件

热门文章

  1. [火星补锅] siano 神奇的线段树
  2. linux 内核源代码情景分析——i386 的页式内存管理机制
  3. zabbix 报警发送qq邮件
  4. SpringCloud 2020.0.4 系列之 Gateway入门
  5. 攻防世界 WEB 高手进阶区 tinyctf-2014 NaNNaNNaNNaN-Batman Writeup
  6. vue配置请求拦截器和响应拦截器
  7. 利用DNS缓存和TLS协议将受限SSRF变为通用SSRF
  8. windows 下 redis服务经常自动关闭
  9. MarkdownPad2 注册码
  10. 【JAVA】笔记(4)---继承;方法覆盖;多态机制;super;