關於Redis過期時間的細節

2021-09-23 15:41:57 字數 468 閱讀 5315

之前無意間和乙個朋友討論過redis的key過期的問題,當key設定了過期時間如果key被更新過期時間還是否有效?

《redis深度歷險》 錢文品

redis的所有資料結構都可以設定過期時間,時間到了,redis會自動刪除相應的物件需要注意的是,過期是以物件為單位的,比如乙個hash結構的過期是整個hash物件的過期,而不是其中的某個子key的過期。

還有乙個需要特別注意的地方,加果乙個字串已經設定了過期時間,然後你呼叫set方法修改了它,它的過期時間會消失。

動手實驗也可以本地安裝redis或者用dock拉取redis映象然後自己試驗一下

發現設定超期時間後,再次set則之前的超期時間失效,開發中要注意這個細節。

redis過期時間

在redis中,可以給乙個鍵設定過期時間,等時間到了以後,該鍵會被自動刪除。這個機制經常被用來儲存驗證碼等有一定時效性的東西,資料的有效期過了以後,就會被自動刪除以節省記憶體空間。跟過期相關的命令有三個,分別是expire persist和ttl,用法如下 來看個簡單的例子 0.1 6379 set...

redis過期時間

如果redis中沒有設定expire過期時間,那麼redis中的資料將會是永久有效的,不會被自動刪除 在不超過最大記憶體的情況下 但是redis無論有沒有設定expire,他都會遵循redis的配置好的刪除機制,在配置檔案裡設定 redis最大記憶體不足 時,資料清除策略,預設為 volatile ...

Redis時間過期處理

目的 業務邏輯為利用usertoken為key在redis中儲存,當不操作時間超過20分鐘時,清空redis,使得使用者重新登入。redis對儲存值的過期處理實際上是針對該值的鍵 key 處理的,即時間的設定也是設定key的有效時間。expires字典儲存了所有鍵的過期時間,expires也被稱為過...