API 限流与计费稳定性设计:状态、时钟与对账
限流可以近似、计费必须精确:用令牌桶加隔离舱做限流,用不可变事件加幂等键做计费,两边靠分钟级对账把数字对齐,并补齐限流器故障时的降级策略。
创建记录 2026-10-29 · 沐小悠 · 约 12 分钟
214 次阅读 阅读 →
「幂等」标签下共 24 篇技术文章。按发布时间倒序排列,内容持续更新。
限流可以近似、计费必须精确:用令牌桶加隔离舱做限流,用不可变事件加幂等键做计费,两边靠分钟级对账把数字对齐,并补齐限流器故障时的降级策略。
答案是:把约束尽可能前移。金额、配额、时间窗口写成不可混用的品牌类型,边界在构造器校验,请求状态迁移用枚举穷举,再配合原子扣减脚本与带唯一约束的幂等账本,让非法状态在写出来之前就被拒绝。
多租户 API 限流与计费的关键是分层限流、事件化计量、预扣幂等扣费与日终对账,再用故障降级和客户端退避保证配额不超卖、账本可重放、漂移可告警。
限流与计费必须一起设计:应把准入、计量、账本拆成三个只通过事件交互的正交行为,以追加写事件流为唯一事实来源,并用预扣—结算—释放与定时对账把误差收敛到可观测范围。
核心是三层限流加三阶段计费:边缘层用 Nginx 挡量,应用层用 Redis 令牌桶原子扣减并按接口成本差异化消耗,租户层管住日/月配额与并发;计费走预扣、结算、对账,靠唯一请求 ID 保证幂等不重不漏。
设计稳定API限流与计费系统,需统一限流与计费口径,采用分层限流、Redis原子脚本、预扣结算、幂等账本和离线对账,并做好降级恢复与可观测性。
共 24 篇文章,第 3 / 3 页