redis 过期处理
2018-02-09 12:00
120 查看
常见过期策略:
1.定时删除(不建议使用)
在一个键设置过期时间的同时为该键创建一个定时器,时间到来的时刻删除该键
优点:内存释放快 ;缺点:大量键的定时器影响性能
2.惰性删除
在对键进程获取或者处理的时候验证是否过期,过期则删除返回null
优点:cpu占用少;缺点:大量未过期未删除的键未删除释放内存可能发生内存溢出
3.定期删除
设定定时器,到时间执行一次删除过期键操作
优点:定期删除cpu占用相对定时删除少很多;缺点,内存方面不如定期删除,cpu占用方面不如惰性删除
难点:设置定期时间,参考逻辑和服务器资源设定
redis 采用的方式是 惰性删除和定期删除的联合方案
惰性删除流程:get或setnx操作时先检查是否过期删除
定期删除流程:获取每个库中的设定过期时间的键 判断是否过期(默认是获取20键验证)
AOF持久化过期键处理
内存持久化到AOF文件时验证键是否过期
AOF文件重写时验证是否过期,过期则删除同时删除文件中的信息
RDB文件恢复到内存中时验证是否过期,过期则删除同时删除文件中的信息
1.定时删除(不建议使用)
在一个键设置过期时间的同时为该键创建一个定时器,时间到来的时刻删除该键
优点:内存释放快 ;缺点:大量键的定时器影响性能
2.惰性删除
在对键进程获取或者处理的时候验证是否过期,过期则删除返回null
优点:cpu占用少;缺点:大量未过期未删除的键未删除释放内存可能发生内存溢出
3.定期删除
设定定时器,到时间执行一次删除过期键操作
优点:定期删除cpu占用相对定时删除少很多;缺点,内存方面不如定期删除,cpu占用方面不如惰性删除
难点:设置定期时间,参考逻辑和服务器资源设定
redis 采用的方式是 惰性删除和定期删除的联合方案
惰性删除流程:get或setnx操作时先检查是否过期删除
定期删除流程:获取每个库中的设定过期时间的键 判断是否过期(默认是获取20键验证)
AOF持久化过期键处理
内存持久化到AOF文件时验证键是否过期
AOF文件重写时验证是否过期,过期则删除同时删除文件中的信息
RDB文件恢复到内存中时验证是否过期,过期则删除同时删除文件中的信息
相关文章推荐
- redis学习笔记——RDB、AOF和复制时对过期键的处理
- spring-redis SortedSet类型成员的过期时间处理
- redis源码笔记 - redis对过期值的处理(in redis.c)
- Redis-数据库-9.7 AOF-RDB和复制功能对过期键的处理
- redis对过期事件的处理
- redis学习系列(五)--redis主从复制原理、断点续传、无磁盘化复制、过期key处理
- Redis(五):关于过期键(3)持久化及主从复制对过期键的处理
- Redis有效时间设置及时间过期处理
- redis处理过期key机制
- redis有效时间设置及时间过期处理
- Redis过期键
- sql server 2008评估过期处理
- redis源码阅读(6)-timeEvent之异步处理客户端
- JWT过期,修改密码,注销登录如何处理
- Redis学习笔记(3)-Redis事务,过期时间,队列
- redis的key的过期机制
- Nginx源码分析—过期事件和惊群事件的处理
- redis学习篇(十)-----高级特性之持久化处理
- Redis事务处理
- Shiro中Session过期页面跳转回登录页面处理问题