91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php redis設置時間的方法

發布時間:2020-10-09 16:39:00 來源:億速云 閱讀:328 作者:小新 欄目:編程語言

這篇文章將為大家詳細講解有關php redis設置時間的方法,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

php redis設置時間的方法:1、取消生存時間,將鍵的生存時間設為永久,是PERSIST,代碼為【PERSIST session:captcha】;2、看一個鍵的生存時間用TTL命令,代碼為【TTL session:captcha】。

php redis設置時間的方法:

Redis對鍵提供生存時間,在不指定生存時間時,生存時間是永久。時間到期后Redis會自動刪除這個鍵。可以用EXPIRE命令,時間單位時秒,如果一個鍵是被設為有限的生存時間,那么在SET key進行重新賦值的時候會被再次設為永久:

SET session:captcha sd2a
EXPIRE session:captcha 600

取消生存時間,將鍵的生存時間設為永久,是PERSIST:

PERSIST session:captcha

查看一個鍵的生存時間用TTL命令,-1表示永久或者以及到期被刪除。

TTL session:captcha

在Redis的INCR,LPUSH,HSET,ZREM等命令時不會改變生存時間的。

想要精確到毫米來控制時間,就需要PEXPIRE即可,使用PTTL查看剩余時間。

如果想要給定一個到期的時間而不是多少秒后到期呢?就需要EXPIREAT和PEXPIREAT。EXPIREAT的參數是到期時的時間戳(秒),PEXPIREAT的參數是到期時間是時間戳(毫秒)

SET session:captcha sd2a
EXPIREAT session:captcha 1399902009
PEXPIREAT session:captcha 1399902009000

應用場景一:訪問頻率限制:我們限定每個用戶1分鐘只能瀏覽10個頁面。偽代碼如下:

$isExists = EXISTS limit:user1:192.168.1.2
if($isExists){
    $num = INCR limit:user1:192.168.1.2
    if($num > 10){
        print '超過限制'
        exit
    }
}else{
    MULTI
    INCR limit:user1:192.168.1.2
    EXPIRE limit:user1:192.168.1.2 60
    EXEC
}

我們用了事務的原因是因為,加入在執行了INCR limit:user1:192.168.1.2之后,在執行EXPIRE limit:user1:192.168.1.2 60之前,客戶端被關閉了。那么這個鍵和值就會被持久化保存。且該ID終身只能訪問10次了。這就太糟糕了。

關于php redis設置時間的方法就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

湖口县| 久治县| 高雄市| 静安区| 安国市| 武山县| 景谷| 临洮县| 莱州市| 宝应县| 宝坻区| 大荔县| 邵武市| 西吉县| 尉氏县| 石景山区| 长寿区| 长沙市| 成安县| 广丰县| 九江县| 绵阳市| 普格县| 乌鲁木齐县| 延安市| 渝北区| 青川县| 红安县| 遂川县| 和顺县| 仲巴县| 玉林市| 天台县| 高雄县| 鹤壁市| 中阳县| 丹巴县| 盘山县| 瓮安县| 平乡县| 六安市|