📚
247
一杯咖啡的时间,聊聊技术与成长
咖啡养成
连载中 11/15
幂等与一人一单:重复请求的全量防御
网络重试、用户连点、脚本多打——重复请求防不住,一人一单就是一句空话。幂等令牌挡住九成重复,数据库唯一索引兜住剩下的,两层各自独立生效,重复订单从机制上消失。
咖啡养成
连载中 10/15
订单超时与库存回补:延迟消息的闭环
下单占住库存却不支付,15 分钟后必须有人来收——关单回补是预扣模式的另一半。延迟消息怎么选、关单与支付的竞态怎么解、回补怎么做到不多不少,这篇把闭环补完。
咖啡养成
连载中 9/15
异步下单:MQ 削峰与订单落库
资格扣完的请求不能直接砸数据库——MQ 把两千 QPS 的洪峰削成五百一秒的平稳落库。消息不丢的三段保证、消费端幂等、订单号预生成,把异步链路接成闭环。
咖啡养成
连载中 8/15
热点库存:一万个人抢同一行
Redis 单线程扛十万 QPS,但一个热 Key 的极限就在那里——库存分片把一个热点拆成 N 个桶,本地缓存让售罄后的请求不再打 Redis,热点探测让分桶在开抢前自动就位。
咖啡养成
连载中 7/15
Redis 预扣库存:Lua 原子扣减的完整实现
数据库的热点行扛不住,Redis 的内存原子操作扛得住——把扣库存从行锁竞争改成 Lua 脚本一步完成。脚本怎么写、库存怎么预热、Redis 挂了怎么办,这篇给完整实现。
咖啡养成
连载中 6/15
库存模型:扣库存的三种时机
超卖的代价是赔付与舆情,少卖的代价是少赚——代价不对称决定了宁可少卖不能超卖。下单减、支付减、预扣加超时回补,三种时机各有各的坑,秒杀的答案是预扣。
咖啡养成
连载中 5/15
风控:黄牛与脚本的对线
一秒三千单的"用户",设备指纹高度雷同,点击轨迹整齐划一——真人占比不到一成。设备、行为、画像、关系四类信号拼出识别线,决策要前置拦截与后置清算结合,误杀的代价永远比漏放贵。
咖啡养成
连载中 4/15
网关与接入层:限流、防刷与黑名单
端上拦得住君子拦不住脚本,系统的第一道闸门在网关:按容量放行的入口限流、多维交叉的频次防刷、动态下发的黑白名单,再把超容量的流量引去排队页。这里决定整个系统能接多少。
咖啡养成
连载中 3/15
前端削峰:页面层就该拦下八成流量
最便宜的过滤层在浏览器里:静态化让页面资源不打后端,防抖置灰拦下连点,答题验证把洪峰拉成缓坡,动态 URL 让脚本提前无处囤弹药。这一层能拦下八成无效流量。