Skip to content
进阶

一句话答案

灰度发布按用户/流量比例逐步切换新版本,实现方式:网关路由(header/IP)、Istio 权重分流、用户标签。

核心要点

实现方式:

  1. 网关路由:按 header/cookie/IP 路由到新版本
  2. 权重分流:Nginx/Istio 按百分比分流
  3. 用户标签:特定用户群先灰度

K8s 实现: 两个 Deployment + Istio VirtualService 按权重分流

追问与易错

追问方向:

  • 灰度出 bug 怎么回滚?
  • 全链路灰度怎么做?
  • A/B 测试和灰度区别?

易错点:

  • ❌ 灰度就是按比例分流——还可以按用户标签
  • ❌ 灰度只看错误率——还要看性能和业务指标

💡 记忆锚点

灰度发布像新药临床试验:先给一小批志愿者用(按用户标签/IP/header路由到新版本),观察有没有副作用(监控错误率和性能),没问题再扩大范围(Istio权重从5%逐步调到100%),出问题随时叫停回滚。不是只看错误率,业务指标和性能都要盯。