2016-08-29 21 views
0

假設鑰匙asd將在某個時間點過期。
和客戶端運行此腳本盧阿:在lua腳本的命令之間,redis服務器是否刪除過期的密鑰?

local a = EXISTS asd 
local b = EXISTS asd 

是否有可能有a真實與b假?
或者我應該放心,在腳本或MULTI命令運行時,不會刪除已過期的密鑰嗎?

上下文: 我正在創建一種網站,其中有關其他用戶的查詢需要很長時間來處理。所以我想創建這些查詢,將它們存儲在某些鍵中,並在x分鐘後將它們過期,以便根據請求重新生成它們。

我有一個腳本,檢查給定的查詢是否已過期,並重新生成它。事情是這樣的:

local e = EXISTS query 
if e == "1" then 
    -- generate query results 
end 
-- return results 
+1

@RyanVincent是的,當然,沒問題,更新 – Erandros

回答

2

正確答案(編輯):

不,這是不可能的:)時間是腳本的執行過程中凍結。

錯誤的答案:

是的,這是可能的。每次訪問密鑰都會檢查/強制執行期滿。