搜索结果: "Redis" (45)
降级与兜底:秒杀挂了也要体面
Redis 不可用、MQ 堆积、风控超时——秒杀链路上没有组件是永远可靠的。降级的本质是有损服务:提前定义哪些损失可接受、谁来决策、开关在哪,预案写在演练里而不是文档里。
数据对账:Redis 与 DB 的最终一致
Redis 扣的、MQ 传的、DB 记的——三个存储三条路径,每个失败分支都是差异来源。总库存恒等式、实时抽样加离线全量、自动修复与人工兜底的分界线,对账是最终一致的最后一块拼图。
热点库存:一万个人抢同一行
Redis 单线程扛十万 QPS,但一个热 Key 的极限就在那里——库存分片把一个热点拆成 N 个桶,本地缓存让售罄后的请求不再打 Redis,热点探测让分桶在开抢前自动就位。
Redis 预扣库存:Lua 原子扣减的完整实现
数据库的热点行扛不住,Redis 的内存原子操作扛得住——把扣库存从行锁竞争改成 Lua 脚本一步完成。脚本怎么写、库存怎么预热、Redis 挂了怎么办,这篇给完整实现。
Docker Compose 本地开发环境搭建模板(附 yaml)
MySQL + Redis + Nacos + MinIO 一键起。包含健康检查、数据卷、网络隔离的完整配置,pig 项目直接用。
陷阱清单:丢失、重复、乱序的一线复盘
七起真实风格的事故复盘:吞异常丢消息、自动提交踩空、Redis 幂等失效、Rebalance 重复扣款、毒消息卡队列、大消息打爆 Broker、误重置位点。每起都给出根因与修复。
网关层限流:Nginx 与 Spring Cloud Gateway
闸门装在入口最划算:流量还没进业务就被拦下,省下的是整条链路的资源。Nginx 的漏桶匀速放行,Spring Cloud Gateway 的 Redis 令牌桶按维度发牌——但网关看不见业务上下文,粗与细要分层配合。
分布式限流:Redis 加 Lua 的原子计数
计数器集中到 Redis,「读-判断-写」的竞态跟着一起搬了过去——老坑新填,还得 Lua。本篇把固定窗口、令牌桶、滑动窗口三个算法的 Redis 版一次讲透,顺带解决时间源统一与 Redis 故障时的放行策略。
限流第一课:固定窗口计数器
「下单接口每秒最多放 200 个」,这句话翻译成代码就是固定窗口计数器:按秒切格子,格子里数数,满了就拒。三行核心逻辑撑起第一道闸门,简单到不容易出错——但它有个藏在窗口边界里的坑。