这个面试题其实考察的是redis的淘汰机制:
noeviction: 不删除策略。当达到最大内存限制时, 如果需要使用更多内存,则直接返回错误信息。(redis默认淘汰策略)
allkeys-lru: 在所有key中优先删除最近最少使用(less recently used ,LRU) 的 key。
allkeys-random: 在所有key中随机删除一部分 key。 volatile-lru: 在设置了超时时间(expire)的key中优先删除最近最少使用(less recently used ,LRU) 的 key。 volatile-random:
在设置了超时时间(expire)的key中随机删除一部分 key。 volatile-ttl: 在设置了超时时间(expire)的key中优先删除剩余时间(time to live,TTL) 短的key。
首先大概计算数据所占用的内存,然后可以在配置文件里面设置maxmemory(单位是byte字节)参数和参数maxmemory-policy(过期策略)
上面描述大概就是说要注意,设置的值
设置淘汰机制: