阅读量:1
Redis缓存失效策略可以通过设置key的过期时间来实现。
设置过期时间: 使用Redis的
EXPIRE
命令可以为一个key设置过期时间,例如:EXPIRE key_name seconds
,其中key_name
为需要设置过期时间的key,seconds
为过期时间,单位为秒。当设置了过期时间后,Redis会在指定的时间后自动删除对应的key。设置全局过期策略: 可以通过Redis的
CONFIG
命令来设置全局的过期策略,例如:CONFIG SET maxmemory-policy policy
,其中policy
为过期策略的名称。常用的过期策略有:- noeviction:不删除任何key,当内存用完时返回错误。
- volatile-lru:在设置了过期时间的key中,优先删除最近最少使用的key。
- volatile-ttl:在设置了过期时间的key中,优先删除即将过期的key。
- volatile-random:在设置了过期时间的key中,随机删除一个key。
- allkeys-lru:在所有的key中,优先删除最近最少使用的key。
- allkeys-random:在所有的key中,随机删除一个key。
- volatile-lfu:在设置了过期时间的key中,优先删除最少使用的key。
- allkeys-lfu:在所有的key中,优先删除最少使用的key。
设置单个key的过期策略: 可以通过Redis的
SET
命令结合EXPIRE
命令来设置单个key的过期策略,例如:SET key_name value EX seconds
,其中key_name
为需要设置过期时间的key,value
为key对应的值,seconds
为过期时间,单位为秒。设置过程是先设置key的值,然后再设置过期时间。
需要根据具体的业务场景和需求来选择合适的缓存失效策略。