Envoy 本地限流与外部 RLS 配置实战
本地限流过滤器(片段)
http_filters:
- name: envoy.filters.http.local_ratelimit
typed_config:
"@type": type.googleapis.com/envoy.extensions.filters.http.local_ratelimit.v3.LocalRateLimit
stat_prefix: http_local_rate_limiter
token_bucket:
max_tokens: 100
tokens_per_fill: 100
fill_interval: 1s
filter_enabled:
runtime_key: local_rate_limit_enabled
default_value: { numerator: 100, denominator: HUNDRED }
外部 RLS(片段)
http_filters:
- name: envoy.filters.http.ratelimit
typed_config:
"@type": type.googleapis.com/envoy.extensions.filters.http.ratelimit.v3.RateLimit
domain: api
rate_limit_service:
grpc_service:
envoy_grpc:
cluster_name: rate_limit_cluster
说明
- 本地限流适合简单规则,外部 RLS 适合复杂策略与分布式共享状态
总结
组合本地与外部限流,可实现灵活与统一的速率控制能力。
限流实现
Envoy 本地限流基于 Token Bucket 算法,按连接维度限流;外部 RLS 基于 Redis 实现分布式配额。
- local rate limit filter 配置
- rate limit service gRPC 集成

发表评论 取消回复