A7中级
缓存策略辩论
30 分钟遇到性能问题时
格式:给定场景,决定什么应该缓存、缓存多久、何时失效。
场景 1:新闻网站
- 首页文章列表
- 文章详情页
- 用户评论
- 热门排行榜
- 用户个人信息
哪些应该缓存?缓存多久?
如果编辑修改了一篇文章的标题,缓存怎么处理?
场景 2:电商商品页
- 商品信息(名称、描述、图片)
- 商品价格
- 库存数量
- 用户评价
- 推荐商品列表
价格能缓存吗?库存能缓存吗?
如果一个商品正在做限时秒杀呢?
核心概念:
- 缓存命中率:缓存被使用的频率。太低说明缓存无效。
- 缓存失效策略:TTL(过期时间)vs 主动失效 vs 写时失效
- 缓存一致性:缓存的数据和真实数据可能不同步
黄金法则:缓存只有两个难题——缓存失效和命名。