HOTKEYS

热键跟踪命令的容器。

语法

HOTKEYS

引入版本:8.6.0

复杂度摘要:—

这是热键跟踪命令的容器命令,提供了一种在指定跟踪时间段内识别 Redis 服务器内热键的方法。

此上下文中的热键由两个指标定义: * 跟踪期间花在该键上的 CPU 时间占总时间的百分比。 * 跟踪期间 Redis 使用的网络字节总数中用于键的网络字节(输入 + 输出)的百分比。

使用

一般工作流程是用户启动应该运行一段时间的热键跟踪过程。键的指标记录在概率数据结构内,之后用户就可以获取前 K 个指标。

可用子命令:

示例

以下示例通过 CPU 时间和网络字节来跟踪键,在跟踪处于活动状态时读取结果,然后停止跟踪并释放其资源。

redis-py 和 go-redis 集群客户端以及 redis-rs 异步集群连接不支持 HOTKEYS。使用这些客户端,可以直接连接到单个节点。

> HOTKEYS START METRICS 2 CPU NET COUNT 10
OK
> GET product:1
"Laptop"
> GET product:1
"Laptop"
> GET product:2
"Phone"
> HOTKEYS GET
1)  1) "tracking-active"
    2) (integer) 1
    3) "sample-ratio"
    4) (integer) 1
    5) "selected-slots"
    6) 1) 1) (integer) 0
          2) (integer) 16383
    7) "all-commands-all-slots-us"
    8) (integer) 27
    9) "net-bytes-all-commands-all-slots"
   10) (integer) 119
   11) "collection-start-time-unix-ms"
   12) (integer) 1791553768375
   13) "collection-duration-ms"
   14) (integer) 44
   15) "total-cpu-time-user-ms"
   16) (integer) 2
   17) "total-cpu-time-sys-ms"
   18) (integer) 0
   19) "total-net-bytes"
   20) (integer) 119
   21) "by-cpu-time-us"
   22) 1) "product:1"
       2) (integer) 24
       3) "product:2"
       4) (integer) 3
   23) "by-net-bytes"
   24) 1) "product:1"
       2) (integer) 80
       3) "product:2"
       4) (integer) 39
> HOTKEYS STOP
OK
> HOTKEYS RESET
OK

资料来源:Redis 官方 HOTKEYS 文档;中文内容参考 Redis 文档许可。