Redis学习之缓存
缓存使用场景
- 降级后端负载,对高消耗的sql结果缓存
- 加速请求响应,利用redis优化Io响应时间
- 大量写合并为批量写,如计数器先redis累加再批量写DB
缓存更新策略
- LRU/LFU/FIFO算法剔除
- 超时剔除:expire
- 主动更新
缓存穿透
缓存和数据库都没有命中造成请求大量访问。
解决方法:(一)缓存过期时间的空对象。(二)布隆过滤器拦截。
缓存雪崩
当缓存服务异常或者脱机,造成流量直接到DB.
热点key的重建
解决方案:(一)互斥锁(二)key永不过时,value设置逻辑过期时间。单线程异步更新。