redis雪崩和穿透的解决方法


redis雪崩和穿透的解决方法

文章插图
redis穿透指当用户查询的key在redis中不存在,对应的id在数据库也不存在,此时被非法用户进行攻击,大量的请求会直接打在db上,造成宕机,从而影响整个系统 。解决方法:把空的数据也缓存起来,比如空字符串,空对象,空数组或list 。
【redis雪崩和穿透的解决方法】redis雪崩是指缓存中的数据大批量失效,然后这个使用又要大量的请求进来,但是由于redis中的key全部失效了所有会全部请求到db上,造成宕机 。解决方法:设置对应热点key永不过期 。过期时间错开,过期时间使用随机生成,并且热点数据的过期时间设置的长一点,非热点数据可以设置短一点 。多缓存结合,例如:请求进入,可以现请求redis,当redis中不存在的时候再去请求memcache,如果都没有再去请求db 。