Redis關(guān)于過期時(shí)間的命令
給Redis對象設(shè)置過期時(shí)間的8個(gè)命令:
set日月、persist、
expire、expireat、
pexpire、pexpireat、
setex、psetex
set key value [ex seconds] [px milliseconds] [NX|XX]
設(shè)置一個(gè)key的value值
persist key
移除key的過期時(shí)間
expire key seconds
設(shè)置一個(gè)key的過去的秒數(shù)
expireat key timestamp
即 expire@ key timestamp
設(shè)置一個(gè)UNIX時(shí)間戳的過期時(shí)間玫膀。
setex key seconds value
設(shè)置key-value并設(shè)置過期時(shí)間(單位:秒)
psetex key milliseconds value
設(shè)置key-value并設(shè)置過期時(shí)間(單位:毫秒)
pexpire key milliseconds
設(shè)置key的有效時(shí)間以毫秒為單位
pexpireat key milliseconds-timestamp
設(shè)置key的到期UNIX時(shí)間戳以毫秒為單位
最常用的有4個(gè):expire、expireat爹脾、set帖旨、setex
expire和expireat只用來設(shè)置過期時(shí)間
set、setex 既可以用來設(shè)置過期時(shí)間灵妨,也可以用來做分布式鎖(不推薦解阅,請參考Redlock算法的實(shí)現(xiàn)。redlock算法雖然復(fù)雜一點(diǎn)泌霍,但卻能保證更好的效果)货抄。
**setex**是原子命令。
從**2.6.12版本**開始朱转,redis 為SET命令增加了一系列選項(xiàng):
EX seconds 設(shè)置key的過期時(shí)間蟹地,單位是秒
PX milliseconds 設(shè)置key的過期時(shí)間,單位是毫秒
NX 只有鍵key不存在時(shí)藤为,才能設(shè)置key的值
XX 只有鍵key存在時(shí)怪与,才能設(shè)置key的值