「Java面试」准备跳槽?请描述一下Redis的缓存淘汰策略「建议收藏」

「Java面试」准备跳槽?请描述一下Redis的缓存淘汰策略「建议收藏」如果你正好遇到这个问题,想好怎么回答了吗?关于这个问题,我把高手的回答整理到了15W字的面试文档里面大家可以S我发送【Mic】领取。

大家好,欢迎来到IT知识分享网。

“请你描述一下Redis的缓存淘汰策略”

如果你正好遇到这个问题,想好怎么回答了吗?

关于这个问题,我把高手的回答整理到了15W字的面试文档里面大家可以S我发送【Mic】领取。

下面看看高手的回答。

高手:

这个问题我需要从三个方面来回答。

第一个方面:

当Redis使用的内存达到maxmemory参数配置的阈值的时候,Redis就会根据配置的内存淘汰策略。

把访问频率不高的key从内存中移除。

maxmemory默认情况是当前服务器的最大内存。

第二个方面:

Redis默认提供了8种缓存淘汰策略,这8种缓存淘汰策略总的来说,我认为可以归类成五种

  • 第一种, 采用LRU策略,就是把不经常使用的key淘汰掉
  • 第二种,采用LFU策略,它在LRU算法上做了优化,增加了数据访问次数,从而确保淘汰的是非热点key。
  • 第三种,随机策略,也就是是随机删除一些key
  • 第四种,ttl策略,从设置了过期时间的key里面,挑选出过期时间最近的key进行优先淘汰
  • 第五种,当内存不够的时候,直接报错,这是默认的策略。

这些策略可以在redis.conf文件中手动配置和修改,我们可以根据缓存的类型和缓存使用的场景来选择合适的淘汰策略。

最后一个方面,我们在使用缓存的时候,建议是增加这些缓存的过期时间。

因为我们知道这些缓存大概的生命周期,从而更好的利用内存。

总结

Redis是一个内存数据库,而内存又是非常宝贵的资源。

如何用有限的服务器资源来支撑更多业务,就必须要考虑到缓存的淘汰算法把一些不怎么使用缓存淘汰掉。

因此,我认为这个面试题的考察方向也很好,建议大家深度学习一下。

大家记得点赞收藏加关注!!!

需要高手面试文档(附赠大厂内部十万字面试文档)或者有不懂的技术面试题想咨询的小伙伴可以后台私信【Mic】或者评论区留言。

「Java面试」准备跳槽?请描述一下Redis的缓存淘汰策略「建议收藏」

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/6132.html

(0)
上一篇 2022-12-18 10:20
下一篇 2022-12-18 10:40

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信