前言
- 最大使用内存:默认无限制,可能会导致 Redis 进程被杀死。
- 内存淘汰策略:选择适合业务的策略。
步骤
- 第一步 内存淘汰策略说明
- 第二步 设置内存淘汰策略
- 第三步 设置最大使用内存
第一步 内存淘汰策略说明
参数 | 解释 |
---|
noeviction | 对于写请求不再提供服务,直接返回错误(Del除外) |
allkeys-lru | 所有key中使用LRU(最近没有使用)算法进行淘汰 |
volatile-lru | 设置了过期时间的key中使用LRU算法进行淘汰 |
allkeys-random | 所有key中随机淘汰数据 |
volatile-random | 设置了过期时间的key中随机淘汰 |
volatile-ttl | 设置了过期时间的key中,淘汰剩余过期时间最短的 |
volatile-lfu | 所有配置了过期时间的键删除逐使用频率最少的键 |
allkeys-lfu | 所有键中删除使用频率最少的键 |
第二步 设置内存淘汰策略
- 配置文件修改,我这里是配置成 allkeys-lru
vim /etc/redis/6379.conf
maxmemory-policy allkeys-lru
- 命令修改
127.0.0.1:6379> config set maxmemory-policy allkeys-lru
OK
第三步 设置最大使用内存
- 查看默认无限制
127.0.0.1:6379> CONFIG GET maxmemory
1) "maxmemory"
2) "0"
- 配置文件修改
vim /etc/redis/6379.conf
maxmemory 1024mb
- 命令修改
127.0.0.1:6379> config set maxmemory 1024mb
OK