Redis内存淘汰机制

Redis内存淘汰机制:
maxmemory_policy:noeviction(默认值)web

volatile-lru:使用LRU算法从已设置过时时间的数据集合中淘汰数据。redis

volatile-ttl:从已设置过时时间的数据集合中挑选即将过时的数据淘汰。算法

volatile-random:从已设置过时时间的数据集合中随机挑选数据淘汰。dom

allkeys-lru:使用LRU算法从全部数据集合中淘汰数据,当内存不足以容纳新写入数据时,在键空间中,移除最近最少使用的key(这个是最经常使用的)。异步

allkeys-random:从数据集合中任意选择数据淘汰svg

no-enviction:禁止淘汰数据。server

noeviction:当内存不足以容纳新写入数据时,新写入操做会报错,这个通常没人用吧xml

allkeys-lru:当内存不足以容纳新写入数据时,在键空间中,移除最近最少使用的key(这个是最经常使用的)事件

allkeys-random:当内存不足以容纳新写入数据时,在键空间中,随机移除某个key,这个通常没人用吧内存

volatile-lru:当内存不足以容纳新写入数据时,在设置了过时时间的键空间中,移除最近最少使用的key(这个通常不太合适)

volatile-random:当内存不足以容纳新写入数据时,在设置了过时时间的键空间中,随机移除某个key

volatile-ttl:当内存不足以容纳新写入数据时,在设置了过时时间的键空间中,有更早过时时间的key优先移除

lazyfree-lazy-expire

lazyfree-lazy-eviction:是否异步驱逐key,当内存达到上限,分配失败后
lazyfree-lazy-expire:是否异步进行key过时事件的处理
lazyfree-lazy-server-del:del命令是否异步执行删除操做,相似unlink
replica-lazy-flush:replica client作全同步的时候,是否异步flush本地db

lazyfree-lazy-eviction

针对redis内存使