zoukankan      html  css  js  c++  java
  • 充分利用nginx的reload功能平滑的上架和更新业务

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

    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配置文件,查看日志,直到服务器AB都有客户访问

  • 相关阅读:
    python 函数的进阶
    python 函数的基础
    python3.6 中特殊格式化 和 字典中的pop
    python 文件操作
    python 基础数据类型补充,set集合,深浅拷贝
    python is 和 == 的区别,编码问题
    python字典
    python中堆和栈_Python小知识00002
    pip的更新_Python小知识00001
    Python字符串的编码
  • 原文地址:https://www.cnblogs.com/xuyingzhong/p/8310217.html
Copyright © 2011-2022 走看看