您好,登錄后才能下訂單哦!
這篇文章運用簡單易懂的例子給大家介紹如何設置合適的redis過期時間,代碼非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
過期時間設置
設置過期時間指的是在key上設置一個時間,使得key在這個時間之內存活,過了這個時間,則刪除該key及其對應的值;redis中一般設置過期時間,而非使用del命令消除元素;
一旦設置了過期時間,這個key只能被命令清除、刪除或者重寫其內容。這些命令包含del、set、getset以及所有的*store命令。這些命令只能改變key對應的value的存儲值而不改變過期時間的設置。
如:使用incr改變key對應的value、使用lpush添加一個新的元素到lists中、使用hset設置field對應value的值等等,這些操作都不影響已經對key設置的過期時間的屬性。
1.通過expire命令實現:demo:expire key 10 ----->為給定的key設置過期時間為10秒
2.通過setex命令實現:demo:setex key 10 value ----->設置key的值為value,存活10秒--->針對key的value為String類型;
以上兩種方式均是針對的key,為其設置過期時間;想要對value中的某一部分數據(其他數據類型)進行過期時間的設置,則需通過其他的方式進行;
設置了過期時間的key依然可以使用persist命令重新持久化。(PERSIST命令可以移除一個鍵的過期時間)
注意:rename命令重命名key后,原始的key對應屬性全部發生轉移。如果key設置了過期時間,并且尚未被刪除,使用rename命令重新命名后,該過期時間將轉移到新的key上。
如果調用expire或者pexpire時傳給一個負值作為參數以及expireat或者pexpireat調用的時候時間戳已經過去,那么該key將直接被刪除而不是等待過期。
刷新過期時間
對一個設置了過期時間的key仍然可以調用expire更新其過期時間。
返回值
設置過期時間會返回一個整數值;
1)如果過期時間被設置成功,返回1;
2)如果設置失敗或者key不存在,則返回0;
關于如何設置合適的redis過期時間就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。