Redis的回收策略(淘汰策略)

volatile-lru :从已设置过期时间的数据集( server.db[i].expires )中挑选最近最少使用的数据淘汰
volatile-ttl : 从已设置过期时间的数据集( server.db[i].expires ) 中挑选将要过期的数据淘汰
volatile-random : 从已设置过期时间的数据集( server.db[i].expires ) 中任意选择数据淘汰
allkeys-lru : 从数据集( server.db[i].dict ) 中挑选最近最少使用的数据淘汰
allkeys-random : 从数据集( server.db[i].dict ) 中任意选择数据淘汰
no-enviction ( 驱逐) : 禁止驱逐数据
注意这里的 6 种机制, volatile 和 allkeys 规定了是对已设置过期时间的数据集淘汰数据还是从全部数据
集淘汰数据, 后面的 lru 、 ttl 以及 random 是三种不同的淘汰策略, 再加上一种 no-enviction 永不回
收的策略。
使用策略规则
1 、如果数据呈现幂律分布,也就是一部分数据访问频率高,一部分数据访问频率 低, 则使用 allkeys-lru
2 、如果数据呈现平等分布, 也就是所有的数据访问频率都相同, 则使用 allkeys-random

相关推荐
panzer_maus6 小时前
Redis的简单介绍(1)
数据库·redis·缓存
聪明努力的积极向上6 小时前
【设计】MySQL + C# 并发分批查询 DataTable Merge 偶发报错分析及解决方案
数据库·mysql·c#
我科绝伦(Huanhuan Zhou)6 小时前
DM数据库逻辑存储结构解析
数据库·oracle
Fluency-116 小时前
94.二叉树的中序遍历
java
梦想的旅途26 小时前
企业微信二次开发:如何实现外部群消息的主动推送?
java·微信·机器人
天空属于哈夫克36 小时前
企业微信 API 开发:外部群自动化推送的技术实现
数据库·microsoft
脑子慢且灵6 小时前
写项目之数据库使用有感
数据库·er图
资生算法程序员_畅想家_剑魔6 小时前
Java常见技术分享-19-多线程安全-进阶模块-并发集合与线程池-线程池框架
java·开发语言
七夜zippoe6 小时前
MyBatis核心源码解析 从SqlSession到Mapper接口的绑定过程
java·mybatis·mapper·sqlsession·缓存机制
艾莉丝努力练剑6 小时前
【Linux进程(七)】进程虚拟地址空间详解:从概念到实现与设计哲学
java·linux·运维·服务器·人工智能·安全·进程