redis maxmemory-policy所有配置
时间: 2023-06-13 16:08:24 浏览: 160
Redis 的 maxmemory-policy 配置用于指定 Redis 内存达到最大限制后的淘汰策略。以下是 Redis 支持的 maxmemory-policy 配置:
- noeviction:当 Redis 内存达到最大限制时,不会进行淘汰,任何写操作都会返回错误。
- allkeys-lru:当 Redis 内存达到最大限制时,使用 LRU 算法淘汰键空间中最近最少使用的键(包括所有数据类型的键)。
- volatile-lru:当 Redis 内存达到最大限制时,使用 LRU 算法淘汰过期键和未设置持久化的键中最近最少使用的键。
- allkeys-random:当 Redis 内存达到最大限制时,随机淘汰键空间中的任意键(包括所有数据类型的键)。
- volatile-random:当 Redis 内存达到最大限制时,随机淘汰过期键和未设置持久化的键中的任意键。
- volatile-ttl:当 Redis 内存达到最大限制时,淘汰过期键和未设置持久化的键中 TTL 值最小的键。如果没有设置 TTL 值的键,则视为 TTL 值为 0,会被立即淘汰。
可以通过以下命令来设置 maxmemory-policy 配置:
```
CONFIG SET maxmemory-policy <policy-name>
```
其中,<policy-name> 为上述所列出的任意一种淘汰策略名称。
相关问题
redis maxmemory-policy
Redis 的 maxmemory-policy 是用于设置在达到最大内存限制时,Redis 该如何处理新的写入请求。具体来说,它决定了 Redis 采用何种策略来释放内存。
常用的策略包括:
1. volatile-lru:从已设置过期时间的键中,选择最近最少使用的键进行删除。
2. volatile-ttl:从已设置过期时间的键中,选择剩余时间最短的键进行删除。
3. volatile-random:从已设置过期时间的键中,随机选择一个进行删除。
4. allkeys-lru:从所有的键中,选择最近最少使用的键进行删除。
5. allkeys-random:从所有的键中,随机选择一个进行删除。
6. noeviction:不删除任何键,只返回错误信息。
需要注意的是,maxmemory-policy 只有在 maxmemory 参数设置了合理值时才会生效。
阅读全文