Redis Lua脚本与键空间通知有关吗?

时间:2016-07-28 13:55:15

标签: lua redis stackexchange.redis

我的按键上有一个带TTL的数据库 我还有一个脚本定期运行,将所有键的TTL重置为默认值(此处为20秒):

local matches = redis.call('KEYS', '*') for _,key in ipairs(matches) do redis.call('SETEX', key, 20, -1) end

我的问题 - 在上述脚本运行时,密钥是否可能会过期 我知道Lua脚本是原子的(http://redis.io/commands/EVAL,“脚本的原子性”)但我不确定这也适用于到期事件。

由于

1 个答案:

答案 0 :(得分:0)

是的,因为Redis在访问密钥时会检查TTL。

此外,强烈建议不要使用KEYS命令,尤其是Lua脚本。