RedisにはアトムGET
+ EXPIRE
コマンドがありますか?これはスライディング有効期限の値として機能します:キーで指定された値を取得しようとした後、のキーが見つかった場合にのみ、X秒間の生存時間を設定します。RedisアトミックGETおよびEXPIRE
1
A
答えて
3
いいえ、ありませんが、MULTI/EXEC
ブロックまたはLuaスクリプトを使用して2つのコマンドを1つずつ送信することを妨げるものはありません。存在しないキーにEXPIRE
を使用すると、何も行われません。
0
それとも、私は簡単なのLuaスクリプトを使用します。Golangで
local val, err = redis.pcall('GET', KEYS[1])
if err then
return err
end
redis.call('EXPIRE', KEYS[1], ARGV[1])
return {val}
あなたが行うことができます:
import "github.com/go-redis/redis"
const lua = `
local val, err = redis.pcall('GET', KEYS[1])
if err then
return err
end
redis.call('EXPIRE', KEYS[1], ARGV[1])
return {val}
`
redisGetEx = redis.NewScript(lua)
result, err = redisGetEx.Run(redisClient, []string{"key"}, 1800).Result()
を
関連する問題
- 1. スタックオーバーフロー、Redis、およびキャッシュの無効化
- 2. ルビー:のみ、GET、PUT、および許可
- 3. は、Get次および前のnodeType
- 4. 構造化、因数分解およびアトミック表現ですか?
- 5. Redis、セッションの有効期限、および逆引き
- 6. インテル64およびIA-32 |獲得/解放の意味を含むアトミック操作
- 7. On-Session-Expire-Event?
- 8. apache no-cache、expire
- 9. C++、getおよび>>をifstreamに使用
- 10. 他のサイトからデータを取得する(PHPおよびGET)
- 11. JQueryオートコンプリートGETおよびJSON配列のデータセキュリティの問題
- 12. Memcached getおよびputメソッドはスレッドセーフです
- 13. 大きな数字を格納するget()およびpeek()ヘルプ
- 14. 味付けスキーマーのget-まず、取得 - 次、およびよたよた機能
- 15. ExtJS:store、pagingToolbar、PHP session expire
- 16. mmap'edファイルによるIPC:アトミックおよび/またはvolatileを使用する必要がありますか?
- 17. Refresh OutputCache on Expire C#MVC
- 18. Memcached - GET操作とSET操作はアトミックですか?
- 19. WPFおよびルーティングイベント
- 20. CMakeおよびCPack。
- 21. Pyopencl:to_deviceおよびバッファ
- 22. ServiceStack.TextおよびISODate( "")
- 23. CoreBluetoothおよびMFi
- 24. ウェブスクレーパーおよびハーベスター
- 25. ClientScript.RegisterForEventValidationおよび__doPostBack()
- 26. ロードおよびPHP
- 27. Box2dWebおよびImages
- 28. DefaultTraceListenerおよびスレッドセーフ
- 29. DrawerLayoutおよびマルチペインレイアウト
- 30. F#およびネームスペース