什么是雪崩?
当山坡积雪内部的内聚力抗拒不了它所受到的重力拉引时,便向下滑动,引起大量雪体崩塌,人们把这种自然现象称作雪崩。
缓存雪崩
缓存雪崩,就是指缓存中数据大批量到了过期时间或者缓存故障,而查询数据量巨大,从而引起数据库压力过大甚至宕机的现象。
缓存击穿
缓存击穿,虽然缓存中没有遇到大批量的KEY过期,但是只有少数KEY过期甚至只有一个KEY过期,而这个KEY是高热数据从而引起数据库压力过大甚至宕机的现象。一般在秒杀活动这种大量访问某几个数据的情况下会出现此问题,也就是某几个热点数据同时过期,也会导致大量的请求击垮数据库,这种情况就叫做缓存击穿。
缓存穿透
我们知道缓存雪崩或击穿,只是数据不在缓存中(失效),但是数据库是有的,只要把数据库的数据加载入缓存即可解决,但是如果数据库也没有怎么办呢?
当缓存中和数据库中都没有相关的业务数据时,如果有大量这样的请求进入后,缓存中查询不到数据,就会不停的去查询数据库,从而导致数据库压力过大甚至系统崩溃的现象,这就叫缓存穿透。