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

相关推荐
小陈phd1 分钟前
电商智能客服智能体——基于LangChain的电商智能客服 Agent 架构设计与实现(二)
数据库·microsoft·langchain
2401_897190553 分钟前
JavaScript对象浅拷贝:Object-assign的合并规则
jvm·数据库·python
Shorasul8 分钟前
如何用 fill 配合 map 初始化一个填充了不同对象的数组
jvm·数据库·python
weixin_5860614611 分钟前
golang如何使用go-redis客户端_golang go-redis客户端使用教程
jvm·数据库·python
逍遥德19 分钟前
Java 锁(线程间)和数据库锁(事务间)对比详解
java·数据库·sql·高并发·锁机制
m0_3776182323 分钟前
C# 异步范围Asynchronous Disposal方法 C# await using如何使用
jvm·数据库·python
gwjcloud32 分钟前
Docker详解
java·docker·容器
Dream of maid32 分钟前
Mysql(9)事务
数据库·mysql
束尘35 分钟前
Vue3 项目集成 OnlyOffice 在线编辑 + 自定义插件开发(二):插入功能全实现
数据库·vue.js·mysql
河阿里40 分钟前
Java-JWT令牌技术深度指南
java·开发语言