码上敲享录 > redis数据库常见问题 > 缓存穿透、缓存雪崩常见解决方案

缓存穿透、缓存雪崩常见解决方案

上一章章节目录下一章 2019-08-20已有369人阅读 评论(0)

缓存穿透、缓存雪崩常见解决方案


解决方法:

缓存穿透:一般获取缓存中的数据,都是通过唯一key或者id去缓存中查询,如果不存在对应的值,就应该去数据库中查找。如果一些恶意的请求故意查询不存在的key或id,而且请求量很大,就会对数据库造成很大的压力。

解决方案:

1.接口层增加校验,对确定没有的key或id进行拦截;

2.从缓存取不到的数据,在数据库中也没有取到,这时也可以将key-value对写为key-null,缓存有效时间可以设置短点,如10秒。



缓存雪崩:指缓存中数据在某一时刻大量的数据过期,而这一刻高并发请求缓存中的数据,大量请求都会到数据库中查找数据,就会引起数据库压力过大甚至down机。

解决方案:设置缓存中数据的过期时间不要太集中,可以设置成随机数,防止同一时间大量数据过期现象发生。


0

有建议,请留言!

  • *您的姓名:

  • *所在城市:

  • *您的联系电话:

    *您的QQ:

  • 咨询问题:

  • 提 交