*Redis STRLEN 命令

返回 String 类型 key 的 value 长度(字节数)。


*语法

STRLEN key

*参数说明

参数 类型 必填 说明
key String 键名

*返回值

条件 返回值
key 存在且为 String value 的字节长度(Integer)
key 不存在 0
key 非 String WRONGTYPE 错误

*时间复杂度

O(1)

*

*示例

> SET mykey "Hello World"
OK
> STRLEN mykey
(integer) 11

> SET mykey "你好"
> STRLEN mykey
(integer) 6    # UTF-8 编码,每个汉字 3 字节

> STRLEN nonexistent
(integer) 0

*常见错误

  1. 对非 String 使用:返回 WRONGTYPE。

*最佳实践

  1. value 大小监控:STRLEN 监控 String value 大小,超过 10KB 时告警拆分。
  2. 二进制数据长度:STRLEN 返回字节数,非字符数。UTF-8 多字节字符需注意。

*FAQ

Q: STRLEN 返回字符数还是字节数? A: 字节数。Redis 的 String 是二进制安全的字节序列。

Q: 空字符串的 STRLEN? A: SET key "" 后 STRLEN 返回 0,与 key 不存在的返回值相同,需 EXISTS 区分。