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

Redis内存淘汰策略

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

Redis内存淘汰策略

这里写目录标题

Redis内存淘汰机制

Redis内存淘汰机制

Redis配置文件中可以设置maxmemory,即内存的最大使用量,到达设置值时会执行内存淘汰机制。其中,LRU(least recently used)为最近最少用到的,LFU(Least Frequently Used)为最不常用的。

volatile-lru -> 使用 LRU 算法删除过期字典中的key
allkeys-lru -> 根据 LRU 算法删除任意key
volatile-lfu -> 使用 LFU 算法删除过期字典中的key
allkeys-lf-> 根据 LFU 算法删除任意key
volatile-random -> 随机删除一个过期字典中的key
allkeys-random -> 随机删除一个key
volatile-ttl -> 删除过期时间最近的key
noeviction -> 根本不过期,只在写操作时返回一个错误

注意这里的6种机制,volatile和allkeys规定了是对已设置过期时间的数据集淘汰数据还是从全部数据集淘汰数据,后面的lru、ttl以及random是三种不同的淘汰策略,再加上一种no-enviction永不回收的策略。

选取内存淘汰策略的规则:

    如果数据呈现幂律分布,也就是一部分数据访问频率高,一部分数据访问频率低,则使用allkeys-lru如果数据呈现平等分布,也就是所有的数据访问频率都相同,则使用allkeys-random
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/786049.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

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

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