如何建立淘宝客网站,wordpress安装主题后无法查看媒体,北京网站建设公司房山华网,建立自己的摄影网站假设设置了一批 key 只能存活 1 个小时#xff0c;那么 1 小时后#xff0c;redis 是怎么对这批 key 进行删除的#xff1f;
定期删除 惰性删除
定期删除:
redis是默认每隔100ms就随机抽取一些设置了过期时间的key#xff0c;检查是否过期#xff0c;如果过期就删除。…假设设置了一批 key 只能存活 1 个小时那么 1 小时后redis 是怎么对这批 key 进行删除的
定期删除 惰性删除
定期删除:
redis是默认每隔100ms就随机抽取一些设置了过期时间的key检查是否过期如果过期就删除。
注意这里是随机抽取 这样即使在redis中存储了很多数据的情况下依然能够保证性能.
惰性删除:
懒惰删除就如字面意思每次在获取key的时候会排查这个key是否过期如果过期了就删除。
Redis内存淘汰机制:
定期删除漏掉了许多过期的key同时也没有去及时排查也就没触发惰性删除这时大量的过期key就会堆积在内存里导致redis内存块耗尽。 而解决这个问题的办法就是redis内存淘汰机制。
Redis提供6种数据淘汰策略
volatile-lru从已经设置了过期时间的数据集中挑选 最近最少使用 的数据淘汰volatile-ttl从已经设置了过期时间的数据集中挑选 即将过期 的数据淘汰volatile-random从已经设置了过期时间的数据集中随机 挑选数据淘汰allkeys-lru从所有数据集中挑选 最近最少使用 的数据淘汰 最常用allkeys-random从所有数据集中随机 挑选数据淘汰no-eviction禁止驱逐数据也就是说当内存不足以容纳新写入数据时新写入操作会报错。
4.0版本之后增加了以下两种
volatile-lfu从已经设置了过期时间的数据集中挑选 最不经常使用 的数据淘汰allkeys-lfu从所有数据集中挑选 最不经常使用 的数据淘汰
Redis事务
Redis的事务其实就是将一组命令打包然后一次性执行完期间不允许被打断执行完毕后才能去执行其他客户端的命令。 所以Redis的事务满足
不支持回滚的原子性一致性隔离性因为是串行的