在分布式系统架构中,业务的流量都是端到端的。每个哀求都会经过很多层处置惩罚,好比从入口网关再到 Web Server 再到服务之间的调用,再到服务访问缓存或 DB 等存储。对于我们的系统来说,数据库黑白常重要的一块。因此无论是在稳定性的管理上,还是在开发提效等场景下,数据库相干的管理能力都是我们系统所需具备的能力。
随着 Go 语言、云原生的广泛采用,Go 语言在微服务场景中使用的越来越广泛,对 Go 语言微服务的管理、限流降级需求也越来越强。在 Go 语言中,固然社区提供了 http://go.uber.org/ratelimit 等限流库,但其一,对多语言支持不足,只支持 Go,其二,功能上,限流降级会细分为流控、隔离、熔断、热点等功能,也不支持动态设置,在功能支持度上不够完善。
MSE 联合 Sentinel,给 Go 语言、Java 语言应用带来微服务管理能力。在微服务应用中,限流降级主要分为三步: