栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Redis缓存淘汰策略

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Redis缓存淘汰策略

Redis默认内存,

1、查看Redis内存大小,通过查看配置文件maxmemory,

2、redis默认内存是多少,最大物理内存的四分之三,

3、如何修改redis内存设置,

修改文件配置,

config set maxmemory,

config get maxmemory,

4、查看 info memory

redis内存淘汰策略,如何淘汰的

在下面架构设计之前,有三种不同的淘汰策略,

定时删除,对CPU不友好,用处理器性能换取存储空间,CPU比较繁忙

惰性删除,数据到达过期时间,不做处理,等下次访问该数据时,如果未过期,返回数据,发现已过期,删除,返回不存在。对内存不友好,如果一个键已经过期,而这个键又仍然保留在数据库中国,那么只要这个过期键不被删除,它所占用的内存就不会被释放。CPU不那么忙了,但是空间浪费了,对内存不友好。

定期删除,折中方式,两种策略综合,定期删除,每隔一段时间执行一次删除过期键操作,随机抽取进行检查删除。

周期性轮询redis库中时效数据,采用随机抽取的策略,利用过期数据占比的方式控制删除频度。

定期删除的难点是确定删除操作执行的时长和频率

Redis6.0.8版本,八种缓存淘汰策略

noeviction:不会驱逐任何key

allkeys-lru对所有key使用LRU算法进行删除

volatile-lru对所有设置了过期时间的key使用lru算法进行删除

allkeys-random对所有key随机删除

volatile-random:对所有设置了过期时间的key随机删除

volatile-ttl删除马上要过期的key

allkeys-lfu对所有key使用LFU算法进行删除

volatile-lfu对所有设置了过期时间的key使用LFU算法进行删除

两个维度,对过期键中筛选,对所有键中筛选

四个方面,LRU,LFU,random,ttl

一般常用的是allkeys-lru

redis的lru算法,Least Recently Used缩写

本质就是HashMap+DoublelinkedList 哈希表+双向链表的结合体

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/328016.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号