用途:HAProxy 是高可用、高性能的 TCP/HTTP 负载均衡与代理方案,提供超低延迟流量路由、SSL 终止和健康检查。本技能用于在构建高并发流量分发、TLS 卸载、限流与后端健康检测时提供配置辅助。
主要能力:支持四层与七层负载均衡,可分发大量并发 TCP/HTTP 连接;支持 TLS 终止与 SSL 卸载,在边缘完成加密握手后再代理到后端;支持基于 stick-table 的高级限流,按滑动时间窗口跟踪客户端 IP,用于缓解 DDoS 与暴力破解;支持健康检查与熔断,检测不健康后端并即时重路由;提供统计面板用于实时流量监控。
使用方式:通过 haproxy.cfg 配置 frontend 与 backend。示例:frontend http_front 中 bind *:80、default_backend web_servers;backend web_servers 中 balance roundrobin、server web1 10.0.0.1:80 check、server web2 10.0.0.2:80 check。生产配置可设置 global 的 maxconn、user、group、daemon 与 TLS 默认选项,defaults 中设置 mode http、超时等;frontend 可绑定 443 并指定证书,使用 redirect scheme https 强制跳转,用 stick-table 与 http-request track-sc0、deny 实现限流;backend 可用 option httpchk 与 http-check expect status 200 做主动健康检查,并用 cookie 做会话保持。四层数据库代理可设置 mode tcp、balance leastconn、option tcp-check。统计面板通过 listen stats 配置 bind、stats enable、stats uri、stats refresh、stats auth。
适用场景:高并发 Web 流量分发、TLS 卸载、数据库读副本连接分发、限流防护、后端健康检测与故障转移。
限制与注意:修改配置前应使用 haproxy -c -f /etc/haproxy/haproxy.cfg 校验;多核服务器应配置多线程;统计面板不应无认证或 IP 限制开放;超时不宜过短以免中断长轮询或上传。常见问题包括配置语法错误、后端全部健康检查失败导致 503、端口被占用无法绑定。具体版本、平台与收费信息暂未提供。