Redis 缓存淘汰策略

#Redis [字体 ··]

redis 有三种缓存淘汰策略,分别是 noeviction、volatile、allkeys。

noeviction

noeviction 策略是 Redis 默认的淘汰策略。 它可以继续接受请求,但只执行读请求,不执行写请求, 这样做可以保证内存中的数据不会被修改和删除。

volatile

volatile 只淘汰设置了过期时间的 key。有三种算法实现:

  1. volatile-lru:根据 lru 算法淘汰设置了过期时间的 key,lru 算法优先删除最近最少使用的 key。
  2. volatile-ttl:根据 key 的过期时间的长短 淘汰设置了过期时间的 key,过期时间越小的 key 优先被删除。
  3. volatile-random:随机淘汰设置了过期时间的 key。

allkeys

allkeys 对所有 key 无差别淘汰。有两种算法实现:

  1. allkeys-lru: 根据 lru 算法淘汰所有的 key,最近最少使用的 key 优先被删除。
  2. allkeys-random:随机淘汰所有的 key。


博客没有评论系统,可以通过 邮件 评论和交流。