日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Redis:05---键的基本命令(下) 生存周期

發布時間:2023/12/13 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Redis:05---键的基本命令(下) 生存周期 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、設置鍵生存/過期時間

  • 生存時間(Time To Live,TTL):在經過指定的秒數或者毫秒數之后,服務器就會自動刪除生存時間為0的鍵

  • 過期時間(expire time):是一個UNIX時間戳,當鍵的過期時間來臨時,服務器就會自動從數據庫中刪除這個鍵

設置生存時間

  • EXPIRE <key> <ttl>:用于將鍵key的生存時間設置為ttl秒

  • PEXPIRE <key> <ttl>:用于將鍵key的生存時間設置為ttl毫秒

設置過期時間

  • EXPIREAT <key> <timestamp>:用于將鍵key的過期時間設置為timestamp所指定的秒數時間戳

  • PEXPIREAT <key> <timestamp>:用于將鍵key的過期時間設置為timestamp所指定的毫秒數時間戳

  • EXPIRE、PEXPIRE、EXPIREAT這幾個命令的內部最終使用的都是PEXPIREAT

注意事項

  • ①如果expire的鍵不存在,則命令返回0。例如:

  • ②如果將過期時間設置為負值,那么該鍵會被立即刪除。例如:

  • ③Redis不支持二級數據結構(例如哈希、列表)內部元素的過期功能,例如可以對列表的key做過期時間,但不能對列表類型的一個元素(value)設置過期時間。例如,下面有一個my_list列表,其含有元素“hello、world、redis”

字符串類型鍵的注意事項

  • 對于字符串類型鍵的注意事項,執行SET命令會去掉過期時間

  • 在Redis源碼中,SET命令的函數setKey()最后執行了removeExpire(db, key)函數去掉了過期時間。

  • 演示案例:

二、查詢鍵的剩余生存時間

  • TTL命令以秒為單位返回鍵的剩余生存時間

  • PTTL命令則以毫秒為單位返回鍵的剩余生存時間

  • 命令返回值:

    • 鍵未過期:ttl返回鍵的剩余秒數,pttl返回鍵的剩余毫秒數

    • 鍵沒有設置過期時間:返回-1

    • 鍵不存在:返回-2

演示案例

三、移除過期時間

  • PERSIST命令可以移除一個鍵的過期時間

演示案例

四、附加SETEX命令

  • SETEX命令可以在設置一個字符串鍵的同時為鍵設置過期時間,其實set+expire的組合,是一個原子操作,并且減少了一次網絡通訊的時間

  • 格式如下:

SETEX key seconds value

演示案例

  • 下面設置一個鍵名為hello,其過期時間為50秒,鍵值為world

總結

以上是生活随笔為你收集整理的Redis:05---键的基本命令(下) 生存周期的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。