详解Nginx 被动检查服务器的存活状态


Posted in Servers onOctober 16, 2021

介绍

通过发送定期健康检查来监控上游组中 HTTP 服务器的健康状况。Nginx 可以持续测试您的上游服务器,避免出现故障的服务器,并将恢复的服务器优雅地添加到负载均衡组中。

被动健康检查

对于被动健康检查,Nginx 会在事务发生时对其进行监控,并尝试恢复失败的连接。如果事务仍然无法恢复,Nginx 将服务器标记为不可用并暂时停止向其发送请求,直到它再次标记为活动状态。

上游服务器标记为不可用的条件是通过上游块中服务器指令的参数为每个上游服务器定义的:

  • fail_timeout :设置要将服务器标记为不可用,必须进行多次失败尝试的时间,以及服务器标记为不可用的时间(默认值为10秒)。
  • max_fails :设置在 fail_timeout 期间必须发生的失败尝试次数,以便将服务器标记为不可用(默认值为1次尝试)。

在以下示例中,如果Nginx在30秒内3次未能向服务器发送请求或未收到来自服务器的响应,则会在30秒内将服务器标记为不可用:

upstream backend {
    server backend1.example.com;
    server backend2.example.com max_fails=3 fail_timeout=30s;
}

注意 :如果组中只有一台服务器,则会忽略fail_timeout和max_fails参数,并且服务器永远不会标记为不可用。

服务器慢启动

最近恢复的服务器很容易被连接淹没,这可能会导致服务器再次被标记为不可用。慢启动允许上游服务器在恢复或可用后逐渐从零恢复其权重到其标称值。这可以通过 slow_start 上游server指令的参数来完成:

upstream backend {
    server backend1.example.com slow_start=30s;
    server backend2.example.com;
    server 192.0.0.1 backup;
}

注意:如果组中只有一个服务器,slow_start 则忽略该参数并且该服务器永远不会标记为不可用。慢启动是 NGINX Plus(商业版) 独有的。

到此这篇关于Nginx 被动检查服务器的存活状态的文章就介绍到这了,更多相关Nginx检查服务器存活状态内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Servers 相关文章推荐
Nginx的rewrite模块详解
Mar 31 Servers
Nginx优化服务之网页压缩的实现方法
Mar 31 Servers
nginx处理http请求实现过程解析
Mar 31 Servers
苹果M1芯片安装nginx 并且部署vue项目步骤详解
Nov 20 Servers
关于Nginx中虚拟主机的一些冷门知识小结
Mar 03 Servers
Z-Order加速Hudi大规模数据集方案分析
Mar 31 Servers
基于Apache Hudi在Google云构建数据湖平台的思路详解
Apr 07 Servers
tomcat默认最大连接数及相关调整方法
May 06 Servers
利用nginx搭建RTMP视频点播、直播、HLS服务器
May 25 Servers
解决Vmware虚拟机安装centos8报错“Section %Packages Does Not End With %End. Pane Is Dead”
Jun 01 Servers
Apache Kafka 分区重分配的实现原理解析
Jul 15 Servers
教你利用Nginx 服务搭建子域环境提升二维地图加载性能的步骤
Sep 25 #Servers
Nginx进程调度问题详解
解决使用了nginx获取IP地址都是127.0.0.1 的问题
Sep 25 #Servers
关于nginx 实现jira反向代理的问题
Windows下用Nginx配置https服务器及反向代理的问题
Sep 25 #Servers
nginx安装以及配置的详细过程记录
Sep 15 #Servers
Nginx缓存设置案例详解
Sep 15 #Servers
You might like
DC漫画《蝙蝠侠和猫女》图透 猫女怀孕老爷当爹
2020/04/09 欧美动漫
什么是MVC,好东西啊
2007/05/03 PHP
异步加载技术实现当滚动条到最底部的瀑布流效果
2014/09/16 PHP
php算法实例分享
2015/07/14 PHP
php实现的XML操作(读取)封装类完整实例
2017/02/23 PHP
Eclipse去除js(JavaScript)验证错误
2014/02/11 Javascript
鼠标滑过出现预览的大图提示效果
2014/02/26 Javascript
CSS+JS实现点击文字弹出定时自动关闭DIV层菜单的方法
2015/05/12 Javascript
如何在Linux上安装Node.js
2016/04/01 Javascript
浅谈JSON.stringify()和JOSN.parse()方法的不同
2016/08/29 Javascript
js中常用的Tab切换效果(推荐)
2016/08/30 Javascript
Vue axios 中提交表单数据(含上传文件)
2017/07/06 Javascript
vue-cli脚手架引入弹出层layer插件的几种方法
2019/06/24 Javascript
vue中音频wavesurfer.js的使用方法
2020/02/20 Vue.js
vue+springboot+element+vue-resource实现文件上传教程
2020/10/21 Javascript
Python实现备份文件实例
2014/09/16 Python
Python获取邮件地址的方法
2015/07/10 Python
python 随机数使用方法,推导以及字符串,双色球小程序实例
2017/09/12 Python
python 判断网络连通的实现方法
2018/04/22 Python
对dataframe进行列相加,行相加的实例
2018/06/08 Python
python 子类调用父类的构造函数实例
2020/03/12 Python
python logging模块的使用详解
2020/10/23 Python
python通过cython加密代码
2020/12/11 Python
网站域名和主机:Domain.com
2019/04/01 全球购物
财务简历的自我评价
2014/03/05 职场文书
农村婚礼主持词
2014/03/13 职场文书
青年文明号服务承诺
2014/03/31 职场文书
高职教师先进事迹材料
2014/08/24 职场文书
二手房购房协议书范本
2014/10/05 职场文书
新党章的学习心得体会
2014/11/07 职场文书
初中信息技术教学计划
2015/01/22 职场文书
2015年清明节演讲稿范文
2015/03/17 职场文书
教师个人师德工作总结2015
2015/05/12 职场文书
推销搭讪开场白
2015/05/28 职场文书
mysql 8.0.24 安装配置方法图文教程
2021/05/12 MySQL
KVM基础命令详解
2022/04/30 Servers