Redis - 淘汰策略有哪些?
默认:
- noenviction:Redis 的默认策略,不回收数据,当达到最大内存时,新增数据返回 error
volatile 是对已设置过期时间的数据集淘汰数据:
- volatile-lru:从已设置过期时间的数据集(server.db[i].expires)中,使用LRU算法淘汰最近最少使用的数据
- volatile-ttl:从已设置过期时间的数据集(server.db[i].expires)中,越早过期的越优先被淘汰
- volatile-random:从已设置过期时间的数据集(server.db[i].expires)中,随机淘汰数据
allkeys 是从全部数据集淘汰数据
- allkeys-lru:从数据集(server.db[i].dict)中,使用LRU算法淘汰最近最少使用的数据
- allkeys-random:从数据集(server.db[i].dict)中,随机淘汰数据