Skip to content
业务稳定性与治理实践 · 第 2 篇 / 共 4 篇
领域项目实践
专题业务系统架构起步专题
当前序列业务稳定性与治理实践
阅读位置第 2 篇 / 共 4 篇当前专题第 2 个序列 / 共 5 个序列

秒杀系统流量治理怎么做更稳

先说结论

  • 秒杀系统第一目标不是“多快”,而是“别让热点流量直接冲垮核心链路”
  • 限流、削峰、库存预扣、异步下单要配套设计,单独做一项都不够
  • 能不能稳定撑住,往往取决于活动前预热和异常时降级方案,而不只是运行时参数

一、秒杀为什么不能按普通下单思路来做

普通下单的请求模型相对均匀,而秒杀场景往往具备:

  • 极短时间内流量爆发
  • 单个商品极端热点
  • 同一用户重复点击
  • 大量“本来就抢不到”的无效请求

如果这类请求直接冲进数据库和订单服务,通常第一波就会把连接池、线程池和库存表一起打抖。

二、一个更稳的治理顺序

更推荐按下面这条链路来做:

  1. 活动前预热商品和规则。
  2. 网关或活动层先限流、验资格。
  3. Redis 或内存层做库存预扣和一人一单判断。
  4. 成功请求写入消息队列异步创建订单。
  5. 订单服务再按正常链路落库和支付。

这样做的核心价值是把最重的数据库事务从流量最前面挪开。

三、秒杀链路里最关键的三道闸

1. 资格校验闸

在真正抢购前先挡掉明显无效流量:

  • 未登录
  • 不在活动时间
  • 不符合用户分层
  • 重复请求过多

2. 库存闸

用 Redis 原子扣减或 Lua 控制库存预扣,尽量不要让所有请求都直接更新数据库库存行。

3. 下单闸

就算预扣成功,也建议进入消息队列异步创建订单,避免活动峰值直接把订单服务拖满。

四、最容易踩的坑

1. 一上来就连数据库扣库存

并发一高,库存表很快成为热点行,锁冲突和连接占满会非常明显。

2. 只做限流,不做降级

活动流量超出预期时,如果没有“秒杀页降级、非核心能力关闭、排队提示”这类方案,再好的限流规则也容易把用户体验打碎。

3. 预扣成功后没有兜底回补

如果消息丢失、订单创建失败、支付超时,没有库存回补机制,库存数据很快会错。

4. 只压测接口,不压测活动流程

秒杀真正的压力不只在接口 QPS,还在:

  • Redis 热点
  • 消息堆积
  • 订单回写
  • 支付回调
  • 失败补偿

五、活动前至少要准备什么

  • 商品、库存、活动规则预热
  • 限流阈值和开关预案
  • MQ 堆积告警
  • 库存回补脚本或任务
  • 页面降级和熔断方案
  • 活动期间的实时看板

总结

秒杀系统流量治理的本质,不是某个组件多快,而是能不能把无效流量挡在前面,把真实成交流量削峰后送进后面的订单链路。资格校验、库存预扣、异步下单和异常降级一起做,系统才真正稳。

延伸阅读相关文章优先当前专题,再补跨专题关联。
同一序列 · 顺着当前主线继续读Sentinel 熔断降级和限流怎么接进业务适合把支付回调、秒杀、流控和链路追踪放在一起看。业务系统架构起步专题 · 商城高并发与治理实践同一序列 · 顺着当前主线继续读链路追踪和日志关联怎么真正用于排障适合把支付回调、秒杀、流控和链路追踪放在一起看。业务系统架构起步专题 · 商城高并发与治理实践同专题其他序列 · 共享标签:项目实战订单服务的事务边界应该怎么划分适合把认证、检索、购物车和订单边界放到一条业务链路里看。业务系统架构起步专题 · 商城业务链路设计实践同专题其他序列 · 共享标签:项目实战防腐层为什么在旧系统改造里很关键适合把 DDD、领域事件、BFF、防腐层和基础组件边界放在同一条项目起步主线上思考。业务系统架构起步专题 · 业务架构设计与项目起步判断跨专题关联 · 同场景:项目实战腾讯云部署 VitePress 技术站:Node、Docker Nginx 与发布全流程适合把站点初始化、HTTPS 域名接入和自动发布这条完整上线链路收拢到同一个专题里持续维护。个人技术站搭建专题 · 个人技术站搭建与上线跨专题关联 · 同类型:实践复盘Request、Limit、HPA 怎么配合容量治理适合把 Deployment、Service、ConfigMap、资源限制和探针放在一起看。Kubernetes 专题 · Kubernetes 核心对象与资源治理
继续阅读业务稳定性与治理实践当前序列第 2 篇 / 共 4 篇当前专题第 2 个序列 / 共 5 个序列
往前看
上一篇支付回调幂等到底该怎么落地回到当前序列上一章上一序列业务骨架与核心链路从第 1 篇开始:商城微服务项目怎么起步:模块拆分、Nacos、OpenFeign、Gateway 的最小实践路径
往后看
下一篇Sentinel 熔断降级和限流怎么接进业务继续当前序列下一章下一序列商城业务链路设计实践从第 1 篇开始:商城认证服务怎么拆分更稳

把零散经验整理成可查、可复用、可持续更新的企业级知识门户