充分利用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配置文件,查看日志,直到服务器A、B都有客户访问
充分利用nginx的reload功能平滑的上架和更新业务的更多相关文章
- Nginx的常用功能
1.规范nginx的配置文件 在企业中我们的虚拟主机可能会很多,配置文件的内容也会有很多,这时候我们就可以规范一下我们的配置文件,把每个虚拟主机按照网站的域名或者是功能取名,放到统一的文件夹中,当然我 ...
- 探究 Nginx 中 reload 流程的真相
今天这篇文章主要来介绍下 Nginx 的 reload 流程.实际上在之前文章中,在更改了 nginx 配置文件时,我们都会执行 nginx -s reload 命令,我们执行这条命令的原因是希望 n ...
- Nginx代理缓存功能
Nginx代理缓存功能 Nginx缓存主要是用于减轻后端服务器的负载,提高网站并发量,提升用户体验度. 注意:Nginx反向代理的缓存功能是由ngx_http_proxy_module提供, ...
- Nginx reopen reload作用及工作过程
http://www.iigrowing.cn/nginx-reopen-reload-zuo-yong-ji-gong-zuo-guo-cheng.html Nginx reopen reload作 ...
- Nginx编译安装和平滑升级
一.Nginx的编译安装 1.安装依赖包gcc,gcc-c++,pcre,openssl-devel 命令:yum -y install gcc gcc-c++ pcre-devel openssl- ...
- Nginx Rewrite相关功能
目录 Nginx Rewrite相关功能 ngx_http_rewrite_module模块指令: if指令: set指令: break指令: return指令: rewrite_log指令: rew ...
- nginx -s reload 导致的错误
C:\pleiades\nginx-1.16.1_3\nginx-1.16.1>nginx -s reload nginx: [error] CreateFile() "C:\plei ...
- nginx -s reload失败
在重启nginx时报错误. wangkongming@ThinkPad-T410 ~ $ sudo /usr/sbin/nginx -s reload nginx: [error] invalid P ...
- 【排障】nginx在reload时候报错invalid PID number
nginx在reload时候报错invalid PID number nginx重新加载配置文件时候报错,提示无效的PID: 解决的办法有二: 第一种思路是因为是加载配置文件报的错,所以用-c 选项指 ...
随机推荐
- Noip模拟14 2021.7.13
T1 队长快跑 本身dp就不强的小马看到这题并未反映过来是个dp(可能是跟题面太过于像那个黑题的队长快跑相似) 总之,基础dp也没搞出来,不过这题倒是启发了小马以后考试要往dp哪里想想 $dp_{i, ...
- 【行人惯性导航】关于行人导航中IMU位姿推导的知识点及相关代码
IMU姿态惯性推导 最近从事行人惯性导航的研究,本人也是一个小白,其中看了很多文献,有很多个人思考很费时间的地方,撰写此随笔的目的不仅是给自己做一个笔记,也是给各位有需要的仁兄一点个人理解. 本文只关 ...
- 平衡二叉树检查 牛客网 程序员面试金典 C++ Python
平衡二叉树检查 牛客网 程序员面试金典 C++ Python 题目描述 实现一个函数,检查二叉树是否平衡,平衡的定义如下,对于树中的任意一个结点,其两颗子树的高度差不超过1. 给定指向树根结点的指针T ...
- Python3 装逼神器---词云(wordcloud)
词云 (Word Cloud)是对文本中出现频率较高的词语给予视觉化展示的图形, 是一种常见的文本挖掘的方法. 实例: 依赖包: # pip3 install wordcloud jieba ...
- kail入侵xp实例
Kali的IP地址是192.168.0.112 Windows XP的IP地址是192.168.0.108 本文演示怎么使用Metasploit入侵windows xp sp3. 启动msfconso ...
- Java 在PPT中创建散点图
本文将以Java代码示例展示如何在PPT幻灯片中创建散点图表. 创建图表前 需要在Java程序中导入用于操作PPT的jar包 Free Spire.Presentation for Java.可参考如 ...
- win10各版本激活码
win + x进入Power shell(管理员),依次输入 Win10专业版 slmgr.vbs /upk slmgr /ipk W269N-WFGWX-YVC9B-4J6C9-T83GX slmg ...
- Part 38 AngularJS cancel route change
n this video we will discuss, how to cancel route change in Angular with an example. This is extreme ...
- RabbitMQ 处理过慢,原来是一个 SQL 缓存框架导致的 GC 频繁触发
一:背景 1. 讲故事 上个月底,有位朋友微信找到我,说他的程序 多线程处理 RabbitMQ 时过慢,帮忙分析下什么原因,截图如下: 这问题抛出来,有点懵逼,没说CPU爆高,也没说内存泄漏,也没说程 ...
- 九. Go并发编程--context.Context
一. 序言 前几篇中提到 等待多个 goroutine 协作的方式可以使用WaitGroup. 但是有一种场景我们无论是使用Mutex, sync/Once,都无法满足. 场景如下 现在有一个 Ser ...