*Redis CLIENT ID 命令

CLIENT ID 返回当前客户端连接的唯一标识符(ID)。


*语法

CLIENT ID

*参数说明

无参数。


*返回值

  • Integer:当前客户端的唯一 ID(64 位整数)

*时间复杂度

O(1)

*

*示例

*获取当前客户端 ID

> CLIENT ID
(integer) 3

*在 CLIENT LIST 中确认 ID

> CLIENT LIST
id=3 addr=127.0.0.1:54321 fd=8 name= age=0 ...

*配合 CLIENT UNBLOCK 使用

> CLIENT ID
(integer) 5
> CLIENT UNBLOCK 5
(integer) 0

*常见错误

错误 原因 解决
ERR wrong number of arguments 提供了多余参数 CLIENT ID 不接受参数

*最佳实践

  • 用于在 CLIENT LIST 中快速定位当前连接
  • 配合 CLIENT UNBLOCK 解除自身或其他连接的阻塞
  • 在日志中记录 CLIENT ID,便于后续追踪和故障排查
  • 客户端缓存重定向时需要用目标客户端的 ID

*FAQ

Q1: 客户端 ID 在连接断开后会被重用吗? A: 不会,每个新连接都会分配单调递增的唯一 ID,不会重用已释放的 ID。

Q2: 客户端 ID 有什么实际用途? A: 主要用于 CLIENT UNBLOCK、CLIENT KILL、CLIENT TRACKING REDIRECT 等需要指定目标客户端的场景。

Q3: 如何获取其他客户端的 ID? A: 使用 CLIENT LIST 查看所有连接的 ID 字段。