redis過期時(shí)間允許為鍵設(shè)置一個(gè)持續(xù)時(shí)間,在該時(shí)間之后鍵及其值將被刪除。(1)通過expire或pexpire命令設(shè)置過期時(shí)間。(2)過期時(shí)間有助于釋放存儲(chǔ)空間、避免數(shù)據(jù)過時(shí)以及管理隊(duì)列。(3)可以使用ttl命令獲取過期時(shí)間,persist命令取消過期時(shí)間。
Redis 過期時(shí)間
Redis 的過期時(shí)間是指設(shè)置一個(gè)鍵在 Redis 數(shù)據(jù)庫(kù)中保持活動(dòng)狀態(tài)的持續(xù)時(shí)間。一旦達(dá)到過期時(shí)間,該鍵及其關(guān)聯(lián)的值將從數(shù)據(jù)庫(kù)中刪除。
設(shè)置過期時(shí)間
可以通過 EXPIRE 或 PEXPIRE 命令為鍵設(shè)置過期時(shí)間:
EXPIRE: 以秒為單位設(shè)置過期時(shí)間。
PEXPIRE: 以毫秒為單位設(shè)置過期時(shí)間。
例如,要將鍵 “my_key” 設(shè)置為在 60 秒后過期,可以使用以下命令:
EXPIRE my_key 60
登錄后復(fù)制
過期時(shí)間的作用
過期時(shí)間對(duì)于管理 Redis 數(shù)據(jù)庫(kù)中的數(shù)據(jù)非常有用,因?yàn)樗梢裕?/p>
釋放空間: 自動(dòng)刪除不再需要的鍵,從而釋放 Redis 數(shù)據(jù)庫(kù)中的空間。
避免數(shù)據(jù)過時(shí): 過期時(shí)間可以幫助避免數(shù)據(jù)過時(shí),因?yàn)橐坏╂I過期,它就會(huì)從數(shù)據(jù)庫(kù)中刪除。
隊(duì)列管理: 可以使用過期時(shí)間來管理隊(duì)列,例如延遲隊(duì)列或優(yōu)先級(jí)隊(duì)列。
獲取過期時(shí)間
可以使用 TTL 命令獲取鍵的剩余過期時(shí)間:
TTL my_key
登錄后復(fù)制
如果返回的值為 -1,則表示鍵沒有設(shè)置過期時(shí)間。
取消過期時(shí)間
可以通過 PERSIST 命令取消鍵的過期時(shí)間:
PERSIST my_key
登錄后復(fù)制
一旦鍵的過期時(shí)間被取消,它將保持活動(dòng)狀態(tài),直到手動(dòng)刪除為止。