雪崩
所有缓存在同一时间失效,恰巧有超大并发数据进行进行查询,缓存没有就会直接所有数据查询数据库导致数据库崩盘
解决方法:
加入随机有效时间,不统一有效时间
穿透
许多大量数据查询缓存没有的,然后也会直接查询数据库,导致数据库崩溃
就是查询缓存一定没有的大量数据,导致数据库崩溃
解决方法:
缓存可以存null值
击穿
精确打击,一个值就要失效了,然后马上来了大量的数据来查询他,缓存没有,也就又是查询db,导致崩溃
解决方法:
将查询数据库的大量请求进行拦截,放行一个查询,查完并释放锁,让其他人获得锁,就不用查db,查缓存了