在浏览 Redis 命令参考时,我遇到了两个非常相似的命令:
SET
带 EX
选项:https://redis.io/commands/setSETEX
:https://redis.io/commands/setex SETEX
自诩为执行 SET
和 EXPIRE
的原子方式,但从外观上看,同样的事情可以用 SET EX
因为它也是一个命令。
2.0.0
中加入了 SETEX,2.6.12
中加入了 EX
参数,所以为了向后兼容,似乎还是前者,但由于某种原因,它没有被标记为已弃用。
我错过了什么吗?现在有使用 SETEX
的有效案例吗?
SET
文档说:
注意:由于 SET 命令选项可以替代 SETNX,SETEX,PSETEX,这是可能的,在未来的版本的 Redis 这三个命令将被弃用和最终删除。
因此可以肯定地说,如果您拥有 Redis 2.6.12 或更高版本,则没有理由使用 SETEX
。