Redis學習之expire命令

2021-10-02 01:18:58 字數 1143 閱讀 1046

redisexpire命令用於設定 key 的過期時間。

key 過期後將不再可用。

expire key seconds
expire 為給定 key 設定生存時間,當 key 過期時(生存時間為 0 ),它會被自動刪除。

在 redis 中,帶有生存時間的 key 被稱為『易失的』(volatile)

生存時間可以通過使用 del 命令來刪除整個 key 來移除,或者被 set 和 getset 命令覆寫(overwrite),這意味著,如果乙個命令只是修改(alter)乙個帶生存時間的 key 的值而不是用乙個新的 key 值來代替(replace)它的話,那麼生存時間不會被改變。

比如說,對乙個 key 執行 incr 命令,對乙個列表進行 lpush 命令,或者對乙個雜湊表執行 hset 命令,這類操作都不會修改 key 本身的生存時間。

另一方面,如果使用 rename 對乙個 key 進行改名,那麼改名後的 key 的生存時間和改名前一樣。

rename 命令的另一種可能是,嘗試將乙個帶生存時間的 key 改名成另乙個帶生存時間的 another_key ,這時舊的 another_key (以及它的生存時間)會被刪除,然後舊的 key 會改名為 another_key ,因此,新的 another_key 的生存時間也和原本的 key 一樣。

使用 persist 命令可以在不刪除 key 的情況下,移除 key 的生存時間,讓 key 重新成為乙個『持久的』(persistent) key 。

——

設定成功返回 1 。

當 key 不存在或者不能為 key 設定過期時間時返回 0 。

127.0.0.1:6379[1]

>

set test:expire 'abc'

ok127.0.0.1:6379[1]

> expire test:expire 50

(integer) 1

127.0.0.1:6379[1]

> ttl test:expire

(integer) 46

127.0.0.1:6379[1]

>

redis之expire命令詳解

expire設定過期時間的單位是秒,如設定name的過期時間為1000秒 expire name 1000 persist命令可以清除超時,讓key變成乙個永久的key rename命令,realname這個key原來就不存在,會將原來的key的過期時間轉換到新的key上,算是移花接木吧!如下,那麼...

redis設定expire以及刪除機制

如果沒有設定有效期,即使記憶體用完,redis 自動 機制也是看設定了有效期的,不會動沒有設定有效期的,如果清理後記憶體還是滿的,就不再接受寫操作。redis無論有沒有設定expire,他都會遵循redis的配置好的刪除機制,在配置檔案裡設定 redis最大記憶體不足 時,資料清除策略,預設為 vo...

redis中鍵的生存時間(expire)

1 redis中可以使用expire命令設定乙個鍵的生存時間,到時間後redis會自動刪除它 expire 設定生存時間 單位 秒 pexpire 設定生存時間 單位 毫秒 ttl pttl 檢視鍵的剩餘生存時間 persist 取消生存時間 expireat key unix時間戳13518586...