负载均衡器 · 实际应用场景全景解析

从四层到七层,从基础流量分发到复杂发布策略的 八大核心场景

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