缓存雪崩一般是由某个缓存节点失效,导致其他节点的缓存命中率下降, 缓存中缺失的数据(memcache经典场景,当有一个客户端的服务请求过来的时候,首先去查memcache,memcache里面是否缓存过了这个数据,如果没有这个数据,我们就去数据库查询,如果有这个数据,我们就从memcache里面取出来,然后给它返回到客户端,这是一个经典的查询过程,在这个场景中,缓存中缺失的数据,是因为它的缓存节点失效了,所以缺失的数据将去数据库查询。去数据库查询.短时间内,造成数据库服务器崩溃.重启 DB,短期又被压跨,但缓存数据也多一些.DB 反复多次启动多次,缓存重建完毕,DB 才稳定运行.或者,是由于缓存周期性的失效,比如每 8小时失效一次,那么每 8小时,将有一个请求”峰值”,严重者甚至会令 DB 崩溃. 上图是之前部门的一个缓存的真实现象,具体是这样的 缓存的数据设置成为每8个小时失效一次,导致最终的结果是每8个小时数据库的压力就变大一次,每8个小时我们的数据库就会迎来一次请求的高峰,因为之前设置的缓存已经失效了。最终导致数据库的压力变得非常大。
时间: 2024-11-08 22:02:47