缓存击穿、缓存穿透、缓存雪崩

1、缓存击穿:是指在超级热点数据突然过期,导致针对超级热点的数据请求在过期期间直接打到数据库,这样数据库服务器会因为某一超热数据导致压力过大而崩掉。
缓存击穿、缓存穿透、缓存雪崩_第1张图片

2、缓存穿透:是指查找的数据在缓存和数据库中都不存在,导致每一次请求数据从缓存中都获取不到,而将请求打到数据库服务器,但数据库中也没有对应的数据,最后每一次请求都到数据库;如果在高并发场景或有人恶意攻击,就会导致后台数据库服务器压力增大,最终系统可能崩掉。
缓存击穿、缓存穿透、缓存雪崩_第2张图片

3、缓存雪崩:是指突然缓存层不可用,导致大量请求直接打到数据库,最终由于数据库压力过大可能导致系统崩掉。缓存层不可用指以下两方面:缓存服务器宕机,系统将请求打到数据库; 缓存数据突然大范围集中过期失效,导致大量请求打到数据库重新加载数据, 与缓存击穿的区别在于这里针对很多key缓存,前者则是某一个key。
缓存击穿、缓存穿透、缓存雪崩_第3张图片

你可能感兴趣的:(JAVA,缓存,数据库,redis)