导图社区 redis缓存设计
本导图梳理的知识内容有收益和成本、缓存更新、缓存穿透、雪崩穿击等,内容丰富全面且思路清新,赶快收藏下图学习吧!
这是一篇关于Codecademy - Javascript的思维导图,主要内容有Variables、Functions、lf statement、Switch statement、Loops等。
这是一篇关于js模块化的思维导图,主要内容有模块加载方案、前端模块化开发的价值、模块的循环引用。
typescript语法的思维导图,主要内容有基本数据类型、对象类型、任意类型Any、联合类型Union Types、元组Tuple等。
社区模板帮助中心,点此进入>>
英语词性
互联网9大思维
组织架构-单商户商城webAPP 思维导图。
法理
刑法总则
【华政插班生】文学常识-先秦
【华政插班生】文学常识-秦汉
文学常识:魏晋南北朝
【华政插班生】文学常识-隋唐五代
【华政插班生】文学常识-两宋
缓存设计
收益和成本
收益
加速读写
降低后端负载
成本
数据不一致
开发成本
运维成本
缓存更新
LRU/LRF/FIFO算法剔除
超时剔除
主动更新
最佳实践
低一致性:设置最大内存 + 淘汰策略剔除
高一致性:主动更新 + 超时剔除
缓存穿透
定义
查询不存在的对象,缓存和存储都不会命中
解决方案
缓存空对象
存在问题
需要更多内存——可通过设置超时解决
数据不一致——可利用消息系统解决
适用场景
数据命中不高
数据频繁变动实时性高
布隆过滤器
优
内存占用少
缺
代码复杂
数据相对固定实时性低
雪崩击穿
缓存层不能正常提供服务,所有请求到达存储层
解决方法
保证高可用,如哨兵集群
限流降级
提前演练