负载均衡器 · 实际应用场景全景解析
从四层到七层,从基础流量分发到复杂发布策略的 八大核心场景
核心问题:在高并发、大规模分布式系统中,如何高效分发流量、确保系统高可用、实现零宕机发布?负载均衡器(Load Balancer)作为流量入口的核心组件,提供了从简单到复杂的多种应用模式。
四层负载均衡 (L4)
Transport Layer · TCP/UDP
工作在传输层(Layer 4),基于 IP 地址 + 端口号 分发流量。不解析应用层内容,性能极高,适合长连接、高吞吐场景。
优势
- 性能极高,吞吐量大
- 转发延迟极低
- 不解析应用层,通用性强
- 适合长连接场景
局限
- 无法感知应用层内容
- 不能基于 URL/Header 路由
- 无法做 SSL 卸载
- 不支持会话保持
七层负载均衡 (L7)
Application Layer · HTTP/HTTPS
工作在应用层(Layer 7),可以解析 HTTP Header、URL、Cookie 等内容。支持灵活的路由策略、内容感知分发、SSL/TLS 终止。
优势
- 基于 URL/Header 智能路由
- 支持 SSL/TLS 卸载
- 可做会话保持(Cookie)
- 支持内容缓存压缩
- 灵活的发布策略
局限
- 需要解析应用层,延迟略高
- 仅支持 HTTP/HTTPS 等应用层协议
- 配置相对复杂
SSL/TLS 卸载
SSL Offloading / Termination
负载均衡器集中处理 HTTPS 加密解密,后端服务器只需处理 HTTP 明文。大幅减轻后端服务器的计算压力,简化证书管理。
优势
- 减轻后端 SSL 计算开销
- 证书集中管理,简化运维
- 支持证书自动续期
- 可做 SSL 加速(硬件加速卡)
注意事项
- LB 与后端间 HTTP 明文传输
- 敏感环境需考虑端到端加密
- LB 成为安全单点
蓝绿部署 · 金丝雀发布
Blue-Green · Canary Deployment
通过负载均衡器的流量权重控制,实现零宕机发布和灰度验证。支持一键回滚、渐进式放量、A/B 测试等高级发布策略。
核心能力
- 蓝绿部署:零宕机发布,一键回滚
- 金丝雀发布:渐进式放量,风险可控
- A/B 测试:同版本不同策略对比
- 流量镜像:真实流量预演
应用场景
- 核心服务高可用发布
- 大版本升级风险控制
- 新功能灰度验证
- 性能优化对比测试
会话保持 (Sticky Session)
Session Persistence
确保同一用户的请求始终分发到同一台后端服务器。适用于需要 Session 状态、缓存本地化、购物车等有状态场景。
实现方式
- Cookie 插入:LB 注入 Session Cookie
- Cookie 前缀:基于现有 Cookie 计算
- 源 IP 哈希:客户端 IP 绑定
- Header 路由:基于自定义 Header
注意事项
- 破坏负载均衡的均匀性
- 后端故障时用户体验受影响
- 建议尽量使用无状态架构
- Session 集中存储更优(Redis)
熔断 · 限流 · 健康检查
Circuit Breaker · Rate Limit
负载均衡器作为系统第一道防线,提供健康检查、熔断保护、请求限流、WAF 防护等能力,保护后端服务不被流量打垮。
核心能力
- 健康检查:主动探测,自动摘除故障节点
- 熔断保护:故障时快速失败,避免雪崩
- 请求限流:QPS/并发数控制,保护后端
- WAF 防护:SQL注入、XSS、CC攻击防护
实现方式
- TCP/HTTP 健康探测
- 自定义健康检查端口/路径
- 滑动窗口限流算法
- 令牌桶/漏桶算法
全球负载均衡 (GSLB)
Global Server Load Balancing
基于 DNS 智能解析,实现多地域、多运营商的全局流量调度。根据用户地理位置、网络延迟、运营商类型智能分配最优接入点。
核心能力
- 地理位置解析:就近接入,降低延迟
- 运营商调度:电信/联通/移动分流
- 多活容灾:地域级故障自动切换
- 加权轮询:按机房容量分配流量
实现方式
- DNS 智能解析(云厂商 DNS)
- Anycast + BGP 路由
- HTTPDNS 绕过 Local DNS
- CDN + GSLB 结合
服务发现与动态配置
Service Discovery Integration
在微服务架构中,负载均衡器与 服务注册中心 集成,动态感知后端服务实例的上下线。支持自动扩缩容、滚动升级、实例权重调整。
核心能力
- 动态注册发现:服务启动自动注册
- 健康检查联动:故障实例自动摘除
- 弹性扩缩容:K8s/HPA 自动感知
- 灰度发布:基于 Metadata/Tag 路由
常见方案
- Kubernetes Service + Ingress
- Consul/Nacos + 配置中心
- Service Mesh (Istio/Linkerd)
- APISIX/Envoy 动态路由
场景能力对比
| 能力维度 | L4 四层 | L7 七层 | SSL 卸载 | 发布策略 |
|---|---|---|---|---|
| 工作层级 | 传输层 (TCP/UDP) | 应用层 (HTTP/HTTPS) | 应用层 | 应用层 |
| 转发依据 | IP + Port | URL/Header/Cookie | 证书 + 路由 | 权重 + 规则 |
| 性能 | ⭐⭐⭐⭐⭐ 极高 | ⭐⭐⭐ 中等 | ⭐⭐⭐ 中等 | ⭐⭐⭐ 中等 |
| SSL 卸载 | ✗ 不支持 | ✓ 支持 | ✓ 核心能力 | ✓ 支持 |
| 会话保持 | ✗ 不支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 |
| 内容路由 | ✗ 不支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 |
| 蓝绿/金丝雀 | △ 部分支持 | ✓ 完整支持 | ✓ 支持 | ✓ 核心能力 |
| 限流/熔断 | △ 基础支持 | ✓ 完善支持 | ✓ 支持 | ✓ 支持 |
| 配置复杂度 | 简单 | 中等 | 中等 | 复杂 |
选型建议
四层优先场景
TCP/UDP 协议、长连接、数据库、消息队列、游戏服务器、需要极致性能的场景
七层优先场景
Web 应用、API 服务、微服务、需要 URL 路由、SSL 卸载、会话保持的场景
发布策略场景
核心服务零宕机发布、大版本升级、新功能灰度验证、A/B 测试对比
安全防护场景
高可用架构、防雪崩、流量控制、WAF 防护、多地域容灾部署