Redis 配置文件 Redis.conf 中有相关注释,我这里就不贴了,大家可以自行查阅或者通过这个网址查看: http://download.Redis.io/Redis-stable/Redis.conf或者查看我的博客Redis 配置
Redis 提供 6 种数据淘汰策略:
volatile-lru(least recently used)已设置过期时间的数据集(server.db[i].expires)里选择最近最少使用的的数据进行淘汰
volatile-tll(time to live)已设置过期时间的数据集(server.db[i].expires)里选择最接近过期时间的数据进行淘汰
volatile-random:从已设置过期时间的数据集(server.db[i].expires)中任意选择数据淘汰
allkeys-lru:当内存不足时,在键空间中,选择最近最少使用的key进行移除(这个是最常用的)
allkeys-random:随机移除key
no-eviction:禁止驱逐数据,也就是说当内存不足以容纳新写入数据时,新写入操作会报错。这个应该没人使用吧!
4.0 版本后增加以下两种:
volatile-lfu(least frequency used):从已设置过期时间的数据集(server.db[i].expires)中挑选最不经常使用的数据淘汰
allkeys-lfu:当内存不足以容纳新写入数据时,在键空间中,移除最不经常使用的 key
备注: 关于 Redis 设置过期时间以及内存淘汰机制,我这里只是简单的总结一下,后面会专门写一篇文章来总结!
参考文档:
https://raw.githubusercontent.com/antirez/redis/2.8/redis.conf