全局速率限制
在分布式系统中,多数情况下,分布式熔断对于吞吐的控制都是非常有效的;但是在有些例外情况下,是需要进行全局的速率控制的,例如大量主机(的请求)被转发给少量主机,并且平均请求延迟很低(比如访问数据库服务器的例子)。如果目标主机因故负载能力降低,下游主机就会影响到上游的集群。这种场景下,要不影响正常通信,又要防止主机故障引起的雪崩,想要为每个下游主机分别配置合适的断路器是很难的。这种案例就是使用全局速率控制的典型场景。
Envoy 直接集成了一个全局 gRPC 速率限制服务。所有实现了预定义 RPC/IDL 协议的服务都可以使用这一服务,Lyft 还提供了一个 Go 编写的实现参考,其中使用 Redis 作为后端。Envoy 的速率限制集成具有如下功能:
当前内容版权归 servicemesher 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 servicemesher .