详解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 相关文章推荐
使用Apache的rewrite
Mar 09 Servers
Apache压力测试工具的安装使用
Mar 31 Servers
nginx简单配置多个server的方法
Mar 31 Servers
nginx里的rewrite跳转的实现
Mar 31 Servers
nginx的zabbix 5.0安装部署的方法步骤
Jul 16 Servers
Linux安装apache服务器的配置过程
Nov 27 Servers
图文详解nginx日志切割的实现
Jan 18 Servers
Tomcat用户管理的优化配置详解
Mar 31 Servers
详解如何使用Nginx解决跨域问题
May 06 Servers
阿里云服务器(windows)手动部署FTP站点详细教程
Aug 05 Servers
windows10 家庭版下FTP服务器搭建教程
Aug 05 Servers
Zabbix6通过ODBC方式监控Oracle 19C的详细过程
Sep 23 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
基于PHP+Ajax实现表单验证的详解
2013/06/25 PHP
PHP实现微信退款的方法示例
2019/03/26 PHP
laravel框架 laravel-admin上传图片到oss的方法
2019/10/13 PHP
基于jquery实现的类似百度搜索的输入框自动完成功能
2011/08/23 Javascript
网页防止tab键的使用快速解决方法
2013/11/07 Javascript
浅谈JavaScript Date日期和时间对象
2014/12/29 Javascript
使用AngularJS实现表单向导的方法
2015/06/19 Javascript
jQuery实现表单步骤流程导航代码分享
2015/08/28 Javascript
angularjs在ng-repeat中使用ng-model遇到的问题
2016/01/21 Javascript
js实现拖拽功能
2017/03/01 Javascript
JS实现上传图片的三种方法并实现预览图片功能
2017/07/14 Javascript
vue2.0 和 animate.css的结合使用
2017/12/12 Javascript
vue项目中引入noVNC远程桌面的方法
2018/03/05 Javascript
Bootstrap 中data-[*] 属性的整理
2018/03/13 Javascript
angular 实现同步验证器跨字段验证的方法
2019/04/11 Javascript
layer.prompt使文本框为空的情况下也能点击确定的方法
2019/09/24 Javascript
JavaScript实现PC端横向轮播图
2020/02/07 Javascript
深入浅析Python字符编码
2015/11/12 Python
简单总结Python中序列与字典的相同和不同之处
2016/01/19 Python
Flask的图形化管理界面搭建框架Flask-Admin的使用教程
2016/06/13 Python
Python字典数据对象拆分的简单实现方法
2017/12/05 Python
你真的了解Python的random模块吗?
2017/12/12 Python
Python 处理图片像素点的实例
2019/01/08 Python
使用Python做定时任务及时了解互联网动态
2019/05/15 Python
Python及Pycharm安装方法图文教程
2019/08/05 Python
Python word文本自动化操作实现方法解析
2020/11/05 Python
CSS3 Flex 弹性布局实例代码详解
2018/11/01 HTML / CSS
群众路线教育实践活动整改方案(个人版)
2014/10/25 职场文书
2014年医生工作总结
2014/11/21 职场文书
优秀小学生事迹材料
2014/12/26 职场文书
村干部任职承诺书
2015/01/21 职场文书
出国留学英文自荐信
2015/03/25 职场文书
2019客服个人年终工作总结范文
2019/07/08 职场文书
导游词之上海豫园
2019/10/24 职场文书
使用pytorch实现线性回归
2021/04/11 Python
ROS系统将python包编译为可执行文件的简单步骤
2021/07/25 Python