缓存穿透
查询数据库和缓存都没有的数据
如何解决缓存穿透
- 缓存空对象
- 布隆过滤器
缓存击穿
数据库有数据,缓存没有(这条数据没人访问过)数据刚好失效 大量并发访问热点key
解决缓存击穿
加锁
缓存雪崩
- redis 挂了
- 大量key同一时间点失效了,同时大量请求进来访问这个失效的key
如何解决缓存雪崩
- 搭建高可用redis集群
- 设置key失效时间尽可能错开
- 出现雪崩,降级 熔断。
查询数据库和缓存都没有的数据
数据库有数据,缓存没有(这条数据没人访问过)数据刚好失效 大量并发访问热点key
加锁