P 在诸如 redex PSETEX (Redis) 之类的命令中代表什么 - 毫秒,但为什么呢?

Jas*_*onG 2 redis

P 用于表示 Redis 中的毫秒数。PSETEX 等命令用于设置以毫秒 (P) 为单位的到期时间。我找不到任何使用 P 的原因 - 谁能解释一下用于毫秒的字母 P 的根是什么?

ant*_*rez 5

P代表precision,因为精度是通过使用毫秒来提高的。

请注意,PSETEX它的上下文看起来有点奇怪,但这源于我们不得不引入的备用毫秒精度命令:

  • PEXPIRE
  • PTTL

然而,这并不好记,所以最近的 Redis 版本,包括 Redis 2.8.x,支持更好的形式,这是SET命令的扩展。所以你可以写:

SET foo bar EX 10 (expire set to 10 seconds)
SET foo bar PX 200 (expire set to 200 milliseconds)
SET foo bar NX (if not exists)
Run Code Online (Sandbox Code Playgroud)

不同的选项可以组合在一起:

SET foo bar PX 200 XX
Run Code Online (Sandbox Code Playgroud)

这意味着:仅当键已经存在时才将 foo 设置为 bar,TTL 为 200 毫秒。

SET 命令文档中提供了更多信息。