Sentinel 路由熔断与统一降级接口

zjc 于 2026-08-20 发布

限流保护的是入口流量,熔断保护的是故障扩散。Gateway 为业务路由统一挂上 CircuitBreaker,下游异常比例或慢请求比例过高时,后续请求会快速失败。

一、两类熔断条件

项目同时配置:

异常比例:异常请求数 / 总请求数
慢请求比例:超过 RT 阈值的请求比例

二者都可以设置最小请求数、统计窗口和恢复时间。最小请求数能避免服务刚启动时因少量样本误熔断。

二、默认规则挂到路由

过滤器的资源名使用:

{routeId}-circuit

不同路由拥有独立熔断器,Provider 故障不应该导致 Mail 请求也一起失败。

三、统一 fallback 接口

熔断后转发到:

/gateway/fallback/{route}

该接口返回 HTTP 503 和统一 JSON,提示下游服务暂不可用。

四、快速失败也是一种保护

没有熔断时,一个下游变慢会占住网关和调用方的并发资源,进而拖垮其他健康服务。熔断把等待变成可预期的快速失败,给下游恢复留时间。

五、经验总结

熔断阈值不能拍脑袋定得太敏感。它应该是容量测试和真实错误率观测之后的结果。