全局 QPS 限制只能保护总体容量,却可能让一个异常租户挤占所有配额。实际系统通常同时设置实例级、接口级、租户级和用户级限制。

常用算法

令牌桶允许一定突发流量,适合大部分 API;漏桶强调平滑输出;滑动窗口更直观,但存储和计算成本较高。分布式限流依赖 Redis 时,也要考虑 Redis 故障后的放行或拒绝策略。

返回可行动的信息

被限流的请求应返回明确状态码和可重试时间。调用方采用带抖动的指数退避,避免所有请求在同一时刻再次冲击系统。关键链路还可以按用户等级或业务优先级预留容量。

限流阈值来自压测、下游容量和延迟目标。它是容量管理结果,不应是配置文件里多年不变的神秘常量。