Nginx、Tengine、OpenRestry的http和tcp后端健康检查【20260520-003篇】
文章目录一、Nginx 开源版(无第三方模块)1. 被动健康检查(内置,默认)TCP 后端(stream 四层)HTTP 后端(http 七层)2. Nginx + 第三方模块(主动检查)编译 Nginx 加模块HTTP 主动检查TCP 主动检查二、Tengine(原生带主动检查)HTTP 健康检查TCP 健康检查查看状态三、OpenResty(Lua 主动检查,推荐)1. HTTP 健康检查2. TCP 健康检查四、三者对比表五、最佳实践建议下面分别给出Nginx(开源)、Tengine、OpenResty的HTTP/TCP 后端健康检查配置与原理说明,重点区分:被动检查 vs 主动检查。一、Nginx 开源版(无第三方模块)1. 被动健康检查(内置,默认)原理:只有转发请求时才探测,不主动发心跳。适用:TCP 四层、HTTP 七层都能用。TCP 后端(stream 四层)stream { upstream tcp_backend { server 127.0.0.1:8080 max_fails=3 fail_timeout=30s; server 127.0.0.1:8081 max_fails=3 fail_timeout=30s; } server { listen 12345; proxy_pass tcp_backend; } }max_fails=3:3 次失败判定 downfail_timeout=30s:30s 内不再调度,之后尝试恢复