当前位置:网站首页>Redis的过期策略和淘汰策略
Redis的过期策略和淘汰策略
2022-08-09 02:58:00 【棒棒吃不胖】
redis的过期策略
1)定时过期
每个创建的KEY都设置一个定时器,到过期时间,则对KEY删除。
优点:定期删除数据,对内存友好
缺点:占用大量CPU去清除数据,影响缓存的响应时间和吞吐量
2)惰性过期
在访问KEY时,才去判断它是否过期,过期就清除数据。
优点:节省CPU资源
缺点:对内存不友好
3)定期过期
每隔一段时间,随机清除内存中过期的KEY。
它是定时过期和惰性过期的折中方案。
Redis中同时使用了惰性过期和定期过期两种过期策略。
redis的内存淘汰策略
redis4.0以前的淘汰策略
volatile-lru:当内存不足以容纳新写入数据时,从设置了过期时间的key中使用LRU(最近最少使用)算法进行淘汰;
allkeys-lru:当内存不足以容纳新写入数据时,从所有key中使用LRU(最近最少使用)算法进行淘汰。
volatile-random:当内存不足以容纳新写入数据时,从设置了过期时间的key中,随机淘汰数据;。
allkeys-random:当内存不足以容纳新写入数据时,从所有key中随机淘汰数据。
volatile-ttl:当内存不足以容纳新写入数据时,在设置了过期时间的key中,根据过期时间进行淘汰,越早过期的优先被淘汰;
noeviction:默认策略,当内存不足以容纳新写入数据时,新写入操作会报错。
redis4.0以后新增的淘汰策略
volatile-lfu:4.0版本新增,当内存不足以容纳新写入数据时,在过期的key中,使用LFU算法进行删除key。
allkeys-lfu:4.0版本新增,当内存不足以容纳新写入数据时,从所有key中使用LFU算法进行淘汰;
边栏推荐
- 非关系型数据库MongoDB:(二)副本集部署说明、数据迁移、限制内存、启用mongo认证
- MES对接Simba实现展讯平台 IMEI 写号与耦合测试
- 手把手教你uniapp接入聊天IM即时通讯功能-源码分享
- 【机器学习】21天挑战赛学习笔记(三)
- 目标检测中mAP计算以及源码解析
- Building PO layered architecture of automated testing framework from 0
- 【洛谷】P5091 【模板】扩展欧拉定理
- 继承 Inheritance
- button click animation
- Postman interface test [official website] latest version installation and use tutorial
猜你喜欢
随机推荐
加密公司集体裁员 以应对加密寒冬和通货膨胀?现加密总市值低于1万亿美元
旋转霓虹圆圈
Shell脚本:正则表达式
手把手教你uniapp接入聊天IM即时通讯功能-源码分享
【网络教程】IPtables官方教程--学习笔记3
接口自动化测试-接口封装思想
ERROR:Module not found: Error: Can‘t resolve ‘core-js/modules/es.promise.js‘ in ‘address‘
机器学习入门
Likou Brush Question Record 4.1-----209. The sub-array with the smallest length
CI/CD:持续集成/持续部署(难舍难分)
online schema change and create index
非关系型数据库MongoDB:(二)副本集部署说明、数据迁移、限制内存、启用mongo认证
按钮点击动画
【图像去噪】基于边缘增强扩散 (cEED) 和 Coherence Enhancing Diffusion (cCED) 滤波器实现图像去噪附matlab代码
C专家编程 第10章 再论指针 10.2 指针数组就是Iliffle向量
ARM开发(二)ARM体系结构——ARM,数据和指令类型,处理器工作模式,寄存器,状态寄存器,流水线,指令集,汇编小练习题
Zabbix 5.0 监控教程(五)
Working subtotal rtcp length and network byte order
【机器学习】21天挑战赛学习笔记(三)
Jenkins的环境部署,(打包、发布、部署、自动化测试)