neo*_*neo 5 ruby ruby-on-rails redis
我正在尝试使用
redis.mapped_mset({ "f1" => "v1", "f2" => "v2" })
Run Code Online (Sandbox Code Playgroud)
设置多个密钥Redis,我不能同时设置过期时间.设置过期时间的唯一方法是使用它:
set(key, value, options = {})
Run Code Online (Sandbox Code Playgroud)
要么
expire(key, seconds)
Run Code Online (Sandbox Code Playgroud)
我不得不多次打电话,这不是我想看到的.还有其他方法可以解决这个问题吗?
Redis 本身不支持带有过期参数的多重设置。Redis#mapped_set是一个要调用的语法糖mset,mset它本身就是一个在事务上set多次调用的语法糖。
因此,您唯一需要做的就是将后续调用包装set(... ex:...)到一个事务中Redis#multi。