redis的过期策略和淘汰策略
过期键删除策略
1.定时删除:在设置键的过期时间的同时,创建一个定时器timer,让定时器在键过期时间来临时,立即执行对键的删除操作。
2.惰性删除:放任键过期不管,但是每次从键空间中获取键时,都检查取得的键是否过期,如果过期的话,就删除该键;如果没有过期,就返回改建。
3.定期删除:每隔一段时间程序就对数据库进行一次检查,删除里面的过期键,至于要删除多少过期键,以及要检查多少个数据库,则有算法决定。
Redis服务器使用的是惰性删除策略和定期删除策略。
六种淘汰策略
noeviction: 不删除策略,达到最大内存限制时,如果需要更多内存,直接返回错误信息。
allkeys-lru: 所有key通用;优先删除最近最少使用(less recently used,LRU)的key。
volatile-lru: 只限于设置expire的部分;优先删除最近最少使用(less used,LRU)的key。
allkeys-random: 所有key通用; 随机删除一部分key。
volatile-random: 只限于设置了expire的部分;随机删除一部分key。
volatile-ttl: 只限于设置expire的部分; 优先删除剩余时间(time to live,TTL)短的key。
使用策略规则:
- 如果数据呈现幂律分布,也就是一部分数据访问频率高,一部分数据访问频率低,则使用allkeys-lru
- 如果数据呈现平等分布,也就是所有的数据访问频率都相同,则使用allkey
redis的过期策略和淘汰策略相关推荐
- 高性能分布式缓存redis(持久化原理 安全策略 过期删除内存淘汰策略 性能压测 高可用 Redis Cluster)
redis redis(持久化原理 安全策略 过期删除&内存淘汰策略 性能压测 高可用 Redis Cluster) 1. 持久化原理 1.1 持久化流程(落盘) 1.2 RDB详解 1.2. ...
- Redis的持久化机制、过期策略、淘汰策略
文章目录 一.持久化机制 1. RDB机制 2. AOF机制 RDB的优缺点 AOF的优缺点 持久化机制选择 二.过期策略 常见过期策略 Redis过期策略 1. 定期删除 2. 惰性删除 RDB对过 ...
- Redis(五)Redis内存维护方案(过期策略及淘汰策略)
目录 内存维护解决方案 过期策略 内存淘汰策略 内存维护解决方案 在Redis的配置文件中redis.conf 中memeory managment # maxmemory <bytes> ...
- Redis 过期策略和淘汰策略
1.Redis 过期策略 Redis 过期策略用于处理设置了缓存时间的数据,使用定时扫描和惰性删除机制删除到期的缓存数据. Redis 将设置了过期时间的 key 保存在一个独立的字典中,定时扫描就是 ...
- redis过期策略与淘汰策略
redis过期策略与淘汰策略 1.过期策略 2.淘汰策略 3.在哪里配置? 4.Lazy Free 1.过期策略 1.redis中所有的key都可以通过expire命令来设置过期时间,所有被设置了过期 ...
- Redis-设置过期时间及淘汰策略
文章目录 1. TTL 2. 设置过期时间 3. 删除过期key 4. 淘汰策略 Redis-设置过期时间及淘汰策略 项目组使用的 Redis 服务器发出了内存不足报警,查了一些资料,记录下. 1. ...
- Reds 过期策略 内存淘汰策略 持久化策略
过期策略 定期删除 redis 会将每个设置了过期时间的 key 放入到一个独立的字典中,以后会定期遍历这个字典来删除到期的 key. 定期删除策略 Redis 默认会每秒进行十次过期扫描(100ms ...
- redis的删除策略和淘汰策略
删除策略:是当数据到期,redis对过期数据的处理策略. 1.定时删除:当某一个key的过期时间到达后,redis就把对应的value和key删除. 优点是省内存,能快速的把过期数据删除腾出空间. 缺 ...
- Redis 键过期与内存淘汰
Redis 中的过期策略 What 过期策略种类 1. 定时过期 每个设置过期时间的 key 都需要创建一个定时器,到过期时间就会立即对 key 进行清除.该策略可以立即清除过期的数据,对内存很友好: ...
最新文章
- oracle 10g 手动创建scott(tiger) schema
- 转载:k2pdfopt详细教程-让kindle看遍所有pdf
- Java中Socket通信-服务端和客户端双向传输字符串实现
- 技术人员写blog的好处
- [android] 隐式意图的配置
- 在指定文件夹下打开Jupyter Notebook
- 深度学习与自然语言处理之五:从RNN到LSTM
- 《UNIX环境高级编程 3rd》笔记(1 / 21):UNIX基础知识
- 自我训练——时间控制能力(四)
- javascript回调函数及推论
- Ruby 学习笔记6
- 设计模式-第五篇之命令模式
- python实现你说我猜游戏
- 有名管道与无名管道之间的区别
- Linux unison 效率,linux inotify+unison双向同步环境部署
- AOJ-AHU-OJ-5 渊子赛马
- Django安全认证机制CSRF
- 使用 LayUI+SpringBoot+Solr 模仿百度、做站内搜索引擎
- MySQL 远程连接报“ SQL 执行错误 # 1130.
- 7-1 求N分之一序列前N项和 (15 分)
热门文章
- 共享可写节包含重定位_艾瑞咨询:2020年数说双11电商购物节报告
- 科研人专属微信红包封面免费送!速领
- Microbiome:宏基因组分箱流程MetaWRAP分析实战和结果解读
- R语言使用ggpubr包的ggarrange函数组合多张结论图(水平并排组合)
- pandas使用replace函数将所有的无穷大值np.inf替换为缺失值np.nan、使用pandas的fillna函数用经验固定值填充缺失值np.nan
- pandas使用fillna函数并设置fffill参数使用列中的前序值填充缺失值(replace missing values with preceding values in column in d
- R语言ggplot2可视化对图形进行纹理填充实战及启示:遇到问题首先去思考有没有现成的包(ggpattern)可以去解决这个问题
- python和R对dataframe的拼接、采样、链式操作:dplyr、tidyr、concat、rbind、cbind、sample、sample_n、set.seed、mutate、filter
- TSNE算法是什么?该算法有什么缺陷?
- 生成对抗网络(Generative Adversarial Network,GAN)