您可以在控制台上通过设置 maxmemory-policy
参数设置 Key 的过期驱逐策略。
作为一个内存数据库,Redis 在内存空间不足的时候,为了保证命中率,就会选择一定的数据淘汰策略,可选的过期策略说明如下:
volatile-lru
(默认值):只从设置失效(expire set)的键中选择最近最少使用的键进行删除。volatile-lfu
:只从设置失效(expire set)的键中选择最不常用的键进行删除。volatile-random
:只从设置失效(expire set)的键中,随机选择一些键进行删除。volatile-ttl
:只从设置失效(expire set)的键中,选出存活时间 TTL(Time To Live)最短的键进行删除。allkeys-lru
:优先删除掉最近最少使用的键。allkeys-lfu
:优先删除掉最不常用的键。allkeys-random
:随机选择一些键进行删除。noeviction
:不删除任何键。当内存不足以容纳新增数据时,新写入操作就会报错,请求可以继续进行,线上任务也不能持续进行,采用 noenviction
策略可以保证数据不被丢弃。您可以根据实际的业务情况选择合理的过期策略。
maxmemory-policy
进行筛选。 API | 描述 |
---|---|
DescribeDBInstanceParams | 调用 DescribeDBInstanceParams 接口查询指定实例的配置参数信息。 |
ModifyDBInstanceParams | 调用 ModifyDBInstanceParams 接口修改指定实例的配置参数。 |