*Redis HOTKEYS-RESET 命令

HOTKEYS-RESET 用于重置 HotKeys 模块的统计数据,清空当前已记录的热点键访问频率信息。


*语法

HOTKEYS-RESET

*参数说明

无参数。


*返回值

  • OK:统计重置成功
  • Error:HotKeys 模块未加载或监控未启动时返回

*时间复杂度

O(1)

*

*示例

*重置热点键统计

> HOTKEYS-RESET
OK

*重置后查询热点键

> HOTKEYS-RESET
OK
> HOTKEYS
(empty array)

*重置后再监控

> HOTKEYS-RESET
OK
> HOTKEYS-START
OK
> GET user:1001:session
"active"
> HOTKEYS
1) "user:1001:session"
2) "1"

*常见错误

错误 原因 解决
ERR unknown command 'hotkeys-reset' HotKeys 模块未加载 在 redis.conf 中加载 hotkeys.so 模块
ERR HotKeys not started 热点键监控未启动 先执行 HOTKEYS-START
重置后返回空数组但实际有业务流量 重置后监控时间太短,样本不足 等待足够时间(建议 ≥ 5 分钟)后再查询

*最佳实践

  • 场景:开始新的监控周期前清空旧数据,确保统计结果准确
  • 建议在业务低峰期执行重置,避免丢失当前监控数据
  • 大促前重置并启动新监控,获取活动期间的热点键数据
  • 配合 HOTKEYS-STARTHOTKEYS-STOP 形成完整的监控周期
  • 重置后建议等待一段时间(如 5 分钟)再查询,确保有足够样本

*FAQ

Q1: HOTKEYS-RESET 会删除 Redis 中的键吗? A: 不会,仅清空 HotKeys 模块的访问频率统计,不影响实际键值数据。

Q2: 重置后需要重新启动监控吗? A: 如果监控已启动,重置后统计会继续;若监控已停止,需先执行 HOTKEYS-START

Q3: 可以按时间段重置统计吗? A: 不支持,该命令会清空全部统计数据。如需分时段统计,可通过 HOTKEYS-STOPHOTKEYS-START 控制监控周期。

Q4: HOTKEYS-RESET 执行后需要等待多久再查询? A: 建议至少等待 5-10 分钟,确保有足够的数据样本。如果业务量很低,可能需要等待更长时间(如 30 分钟)。

Q5: 重置操作会被记录在 Redis 日志或慢查询日志中吗? A: 通常不会。HOTKEYS-RESETO(1) 操作,执行速度快,不会触发慢查询日志。但可通过 Redis 监控工具审计命令执行历史。