面试总结
  cBnrSAyWmGQb 2023年11月30日 33 0

redis缓存

缓存穿透(缓存穿透是指恶意或异常的查询请求导致缓存系统无法命中缓存,每次请求都要查询数据库或其他存储后端,导致数据库或存储系统压力过大的问题)
  1. 缓存空数据
  2. 布隆过滤器
缓存击穿(缓存击穿是给某一个key设置了过期时间,当key过期的时候,恰好这时间点对这个key有大量的并发请求过来,这些并发的请求可能会瞬间把DB给压垮)
  1. 逻辑过期(逻辑过期,意味着永不过期。缓存击穿问题产生的原因是某个热点key过期了,请求都打到数据库了,造成数据库压力过大。因此我们可以提前准备一个不过期的热点key ,不设置它的过期时间,将这个key保存到redis中,这样理论上总能命中redis。那是怎么判断这个key逻辑上过期了?答案是这个key的value存储一个过期时间,我们判断这个key是否过期的依据,就是这个key的value保存的过期时间。)
缓存雪崩
  1. 给不同的key的过期时间设置添加一个随机值,降低同一个时段大量key同时过期的概率
  2. 如果redis服务宕机,可以利用redis一些高可用的方案 比如哨兵模式,集群模式
  3. 给缓存业务添加降级限流策略 可以利用ngxin或者getway
  4. 给业务添加多级缓存 Guava或者caffeine为一级缓存,redis为二级缓存



【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

上一篇: Jenkins忘记管理员密码 下一篇: android源码
  1. 分享:
最后一次编辑于 2023年11月30日 0

暂无评论

推荐阅读
cBnrSAyWmGQb