两个上游 A、B,主备切换。判定规则踩过坑:

一开始按「连续 3 次失败切」,结果上游偶发抖动被误判,来回切,反而更不稳。

改成:

  • 连接错误、超时:连续 2 次切
  • 429:不切,直接退避重试(限流不是故障)
  • 5xx:连续 5 次或 1 分钟内错误率 > 30% 才切
  • 切回:主上游恢复后观察 5 分钟,错误率正常才切回

外加熔断:切走后 10 分钟内不探测,避免雪崩期间的无效请求。

关键认知:限流和故障要分开处理。混在一起会导致一被限流就把整条链路切走,白白损失容量。

主楼