支付宝是如何解决热点库存扣减问题的?

支付宝是如何解决热点库存扣减问题的?

https://mp.weixin.qq.com/s/4XQAdXEVIjXnicauPE-yMw

典型问题: 热点库存扣减

这个是典型的秒杀场景,秒杀系统相对简单的库存扣减问题,比如春节红包雨活动,同一个资金池子有数亿人抢红包,比如阿里巴巴针对红包活动150万QPS的峰值压力,应该如何设计库存扣减方案呢?

常规方案

采用分桶设计,将库存均匀分发到 N 个 Redis 分桶中。通过 Incr 无锁的方式,高效扣减库存。

  1. 假设 key 失效了怎么办?
  2. 假设 Incr 方法失效了怎么办,

上面两种情况都会满足 $num < $max

复制代码
$num = $redis->incr($key);
if ($num > 0 && $num < $max) { 
 //入抢购成功队列,异步去执行抢购成功逻辑
} else {
 //不好意思呢,已经被抢完了
}

缺点:

每个桶库存消耗不均,会导致实际还有库存,但是有部分用户无法扣减库存,引发客诉。

优化后的方案

  • 小量多次分派库存,从而缓解消耗不均问题。
  • 21年抖音春节红包,将用户进入的时间打散,减少瞬时请求峰值。
相关推荐
带娃的IT创业者8 小时前
解密OpenClaw_03-OpenClaw核心功能特性
macos·系统架构·objective-c·cocoa·软件工程·智能体开发·openclaw
云呐10 小时前
固定资产管理软件的核心优点有哪些?
金融·系统架构·健康医疗·制造·政务
开源能源管理系统11 小时前
开源模式下的企业级能源管理系统架构演进与实践思考
系统架构·开源·能源管理系统
Tadas-Gao11 小时前
大模型实战装备全解析:从本地微调到移动算力的笔记本电脑选择指南
架构·系统架构·大模型·llm
C澒11 小时前
从单体到分布式:SLDS 2.0 全球物流履约网络架构演进之路
前端·分布式·架构·系统架构·教育电商·交通物流
彷徨的蜗牛11 小时前
架构设计终极指南:从选型博弈到演进路线
架构·系统架构
今天只学一颗糖20 小时前
1、《深入理解计算机系统》--计算机系统介绍
linux·笔记·学习·系统架构
若风的雨1 天前
【deepseek】RT-Thread 对 PCIe 的支持情况
系统架构
我只会写Bug啊1 天前
【软考】系统架构设计师-论文范文(三)
系统架构·软考·系统架构师·系统分析师·十大管理·信息项目管理工程师
我只会写Bug啊1 天前
【软考】系统架构设计师-论文范文(二)
系统架构·软考·系统分析师·十大管理·信息项目管理