BZAbjp 发表于 2025-2-21 20:19:44

管理Redis内存占用

淘汰策略

如果设置了合适的淘汰策略,Redis 会根据以下几种策略选择性地移除某些键,腾出内存空间(淘汰策略需要和内存限制配合使用)
常用淘汰策略说明
策略说明volatile-lru从设置了过期时间的键中,移除最近最少使用(LRU)的键。allkeys-lru从所有键中,移除最近最少使用(LRU)的键。volatile-random从设置了过期时间的键中,随机移除键。allkeys-random从所有键中,随机移除键。volatile-ttl从设置了过期时间的键中,移除即将过期的键(优先移除 TTL 短的键)。noeviction当内存超过限制时,直接返回错误,不再执行新增操作(这是默认策略)。设置方法: 在 redis.conf 文件中添加或修改:
1
maxmemory-policy allkeys-lru
或通过命令行动态设置:
1
redis-cli config set maxmemory-policy allkeys-lru
内存限制

设置 maxmemory
1
2
3
maxmemory 4gb
# maxmemory 4G
# maxmemory 4294967296
通过命令行动态设置:
1
redis-cli config set maxmemory 4294967296
持久化设置

如果缓存数据可丢失,可以禁用持久化(RDB 和 AOF)以减少磁盘 IO 开销:
1
2
save ""
appendonly no
页: [1]
查看完整版本: 管理Redis内存占用