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

相关推荐
lang201509283 分钟前
Reactor操作符的共享与复用
java
TTc_14 分钟前
@Transactional事务注解的批量回滚机制
java·事务
Edingbrugh.南空36 分钟前
Flink SQLServer CDC 环境配置与验证
数据库·sqlserver·flink
码不停蹄的玄黓1 小时前
MySQL分布式ID冲突详解:场景、原因与解决方案
数据库·分布式·mysql·id冲突
wei_shuo1 小时前
飞算 JavaAI 开发助手:深度学习驱动下的 Java 全链路智能开发新范式
java·开发语言·飞算javaai
爱上语文1 小时前
Redis基础(6):SpringDataRedis
数据库·redis·后端
欧阳秦穆1 小时前
apoc-5.24.0-extended.jar 和 apoc-4.4.0.36-all.jar 啥区别
java·jar
岁忧2 小时前
(LeetCode 面试经典 150 题 ) 58. 最后一个单词的长度 (字符串)
java·c++·算法·leetcode·面试·go
Java初学者小白2 小时前
秋招Day14 - Redis - 应用
java·数据库·redis·缓存
代码老y2 小时前
Spring Boot + 本地部署大模型实现:优化与性能提升
java·spring boot·后端