数据库相关
1、缓存穿透+缓存击穿+缓存雪崩
缓存穿透
查询的数据,缓存和数据库都不存在,一直查询,就会一直命中数据库进行查询
策略:
缓存空对象---缓存中有很多空对象,浪费空间
布隆过滤器---查询的数据id进行一系列哈希,作为下标,放到很大的一个二进制数组中,对应下标的值存 1
---如果不存在就一定没有,如果存在但不一定有,,因为是hash值作为下标,所以有判错率,哈希次数越多,数组越大,判错率越小
---
缓存击穿
高并发第一次访问数据,未在缓存中,命中数据库
热点数据突然失效
---如果未在缓存中,在读取数据库时进行加锁
缓存雪崩--是指在某一个时间段,缓存集中过期失效
大量热点数据缓存失效或者redis宕机
策略:
redis集群
热点数据失效时间分开设置
#java求职##学习路径#查询的数据,缓存和数据库都不存在,一直查询,就会一直命中数据库进行查询
策略:
缓存空对象---缓存中有很多空对象,浪费空间
布隆过滤器---查询的数据id进行一系列哈希,作为下标,放到很大的一个二进制数组中,对应下标的值存 1
---如果不存在就一定没有,如果存在但不一定有,,因为是hash值作为下标,所以有判错率,哈希次数越多,数组越大,判错率越小
---
缓存击穿
高并发第一次访问数据,未在缓存中,命中数据库
热点数据突然失效
---如果未在缓存中,在读取数据库时进行加锁
缓存雪崩--是指在某一个时间段,缓存集中过期失效
大量热点数据缓存失效或者redis宕机
策略:
redis集群
热点数据失效时间分开设置