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

相关推荐
AI题库9 分钟前
PostgreSQL 18 从新手到大师:实战指南 - 1.1 PostgreSQL 18简介
数据库·postgresql
好记忆不如烂笔头abc12 分钟前
Ubuntu 20.04.6上实现远程桌面连接
服务器·网络·数据库
今晚务必早点睡13 分钟前
Redis——快速入门第七课:Redis 为什么这么快?
数据库·redis·缓存
赵庆明老师19 分钟前
VS2026扩展插件Visual Commander
java·开发语言
额呃呃23 分钟前
信号量唤醒线程的实际机制
java·开发语言·jvm
EterNity_TiMe_26 分钟前
从 0 到 1:Llama 3-8B 在昇腾 Atlas 800T 上的推理调优与算力榨干指南
数据库·llama·昇腾·atlas 800t·实战部署
程序员阿鹏28 分钟前
怎么理解削峰填谷?
java·开发语言·数据结构·spring·zookeeper·rabbitmq·rab
代码的奴隶(艾伦·耶格尔)33 分钟前
Sentinel限流熔断
java·前端·sentinel
talenteddriver35 分钟前
mysql: MySQL中between子句和limit子句的区别
前端·javascript·数据库
不会kao代码的小王36 分钟前
BoostKit 数据库优化原理分析从 MySQL 到 MariaDB 的性能突破
数据库·mysql·mariadb