*Redis CLIENT KILL 命令

关闭指定的客户端连接。


*语法

CLIENT KILL [ip:port] [ID client-id] [TYPE normal|master|slave|pubsub] [USER username] [ADDR ip:port] [SKIPME yes/no]

*参数说明

参数 类型 必填 说明
ip:port String 客户端地址(旧语法)
ID Integer 客户端 ID
TYPE 标志 客户端类型
USER String 用户名(ACL)
ADDR String 客户端地址
SKIPME yes/no 是否跳过当前连接,默认 yes

*返回值

条件 返回值
成功 关闭的客户端数量(Integer)
未匹配 0

*时间复杂度

O(N),N 为客户端数量。


*示例

# 关闭指定 ID 的客户端
> CLIENT KILL ID 12345
(integer) 1

# 关闭所有 pubsub 客户端
> CLIENT KILL TYPE pubsub
(integer) 3

# 关闭指定地址
> CLIENT KILL ADDR 192.168.1.100:54321
(integer) 1

# 不跳过自己(危险)
> CLIENT KILL SKIPME no
(integer) 1

*常见错误

  1. SKIPME no:可能关闭自己当前连接。

*最佳实践

  1. 清理异常连接:关闭长时间空闲或异常的客户端连接。

*FAQ

Q: CLIENT KILL 会立即断开连接吗? A: 是。客户端会立即收到连接断开通知。