redis-淘汰策略(8种)
Redis 提供了 8 种不同的淘汰策略:
noeviction
: 不进行淘汰,当内存不足时,如果需要更多内存,Redis 命令会报错。allkeys-lru
: 根据最少最近使用算法(LRU),在所有键中淘汰不常使用的键。volatile-lru
: 根据 LRU 算法,在设置了过期时间的键中淘汰不常使用的键。allkeys-random
: 在所有键中随机淘汰键。volatile-random
: 在设置了过期时间的键中随机淘汰键。volatile-ttl
: 在设置了过期时间的键中淘汰存活时间(TTL)最短的键。allkeys-lfu
: 根据最少最频繁使用算法(LFU),在所有键中淘汰不常使用的键。volatile-lfu
: 根据 LFU 算法,在设置了过期时间的键中淘汰不常使用的键。
设置淘汰策略的命令:
redis-cli config set maxmemory-policy allkeys-lru
示例代码(假设使用 Python 的 redis
库):
import redis
# 连接到 Redis
r = redis.Redis(host='localhost', port=6379, db=0)
# 设置淘汰策略为 allkeys-lru
r.config_set('maxmemory-policy', 'allkeys-lru')
注意:在实际应用中,根据业务需求选择合适的淘汰策略。
评论已关闭