redis hash結構如何設定過期時間

2022-05-06 09:48:07 字數 685 閱讀 5822

redis中有個設定時間過期的功能,即通過setex或者expire實現,目前redis沒有提供hsetex()這樣的方法,redis中過期時間只針對頂級key型別,對於hash型別是不支援的,這個時候,我們可以採用,所以如果想對hash進行expires設定,可以採用下面的方法:

redis 127.0.0.1:6379> hset expire:me name tom

(integer) 0

redis 127.0.0.1:6379> hget expire:me name

"tom"

redis 127.0.0.1:6379> expire expire:me 20

(integer) 1

redis 127.0.0.1:6379> ttl expire:me

(integer) 8

......

...redis 127.0.0.1:6379> ttl expire:me

(integer) -1

redis 127.0.0.1:6379> hget expire:me name

(nil)

即對儲存在redis資料庫中的值可以設定乙個過期時間。作為乙個快取資料庫,這是非常實用的。如我們一般專案中的token或者一些登入資訊,尤其是簡訊驗證碼都是有時間限制的,按照傳統的資料庫處理方式,一般都是自己判斷過期,這樣無疑會嚴重影響專案效能。

Redis Hash資料結構

1 redis的字典使用雜湊表作為底層實現,乙個雜湊表裡面可以有多個雜湊表節點,而每個雜湊表節點就儲存了字典中的乙個鍵值對。2 redis 字典所使用的雜湊表由dict.h dictht結構定義 typedef struct dictht dictht 1.table屬性是乙個屬組,陣列中的每個元素...

Redis hash結構 和常用命令

redis 資料結構 雜湊 hash 是 乙個 string 型別的field 和 value 的對映表 hash 的鍵值 對在記憶體中的一種無序的狀態 命令說明 備註hdel key field1 field2.刪除 hash 結構中的 某個 些 字段 可以進行多個欄位的刪除 hexists ke...

redis hash 結構實現的兩種方式

壓縮列表是 redis 資料型別為 list 和 hash 的底層實現之一。壓縮列表是 redis 為了節約記憶體而開發的,它是由連續記憶體塊組成的順序型資料結構,有點類似於陣列。壓縮列表除了查詢複雜度高的問題,壓縮列表在插入元素時,如果記憶體空間不夠了,壓縮列表還需要重新分配一塊連續的記憶體空間,...