首页/数据/Redis 进阶速查/延迟事件类别速查
性能与排障129 条

延迟事件类别速查

常见事件类别:command(普通命令慢)、fork(持久化 fork 耗时)、expire-cycle(过期清理超时)、eviction-cycle(淘汰超时)等,按类别找根因。

Redis 进阶速查数据更新于 2026-10-13

延迟事件类别是什么

LATENCY 记录的是「某类操作耗时异常」的事件,按类别分组:命令执行、fork、过期清理、淘汰清理、AOF 落盘等。每类事件保存最近一次的时间、本次耗时与历史最大值,还能按类别查时间序列。先看哪一类在涨,才能决定去查命令、持久化还是内存。

基本信息

查看LATENCY LATEST 列出各类事件的最新值与历史最大值
时序LATENCY HISTORY <事件> 看该类事件随时间的变化
重置LATENCY RESET 清空事件统计
单位事件耗时以毫秒记录
前提只有被触发过的类别才会出现在结果里

常见事件类别与方向

事件通常根因方向下一步动作
command慢命令、大键、复杂操作查 SLOWLOG 与命令形状
fork持久化 fork 与写时复制开销查内存规模与持久化配置
expire-cycle大量键集中过期查 TTL 分布与是否加抖动
eviction-cycle内存超限频繁淘汰查内存水位与淘汰策略
aof-write 与 aof-fsync-alwaysAOF 落盘与刷盘策略查磁盘性能与 appendfsync 设置

取证命令

取证命令
redis-cli LATENCY LATEST                  # 每类事件的最新值与历史最大值
redis-cli LATENCY HISTORY command         # 某类事件的时间序列
redis-cli LATENCY RESET                   # 清空事件统计,重新观察
redis-cli INFO persistence | grep -E 'rdb_last_bgsave_status|aof_last_write_status'
redis-cli SLOWLOG GET 5                   # 对应 command 类事件的具体命令

典型使用场景

  • 延迟尖刺分类:先确认是命令层还是后台任务层
  • 后台任务影响评估:fork 与持久化类事件上涨时评估快照策略
  • 落盘策略验证:AOF 相关事件提示刷盘方式与磁盘性能不匹配
  • 内存类取证:淘汰与过期事件指向容量与 TTL 设计问题
  • 与慢日志对照:命令类事件配合 SLOWLOG 看具体命令
事件类别与版本有关,不同版本可能新增或调整类别;先看本实例 LATENCY LATEST 的实际输出,再对照排查清单。
LATENCY RESET 会清掉历史最大值,之前积累的峰值证据不可恢复;重置前先把当前输出记录下来。

易错点

  • 把所有延迟都归到命令层,忽略 fork、过期清理这类后台任务类别
  • 看到 command 事件就只优化命令,不去确认是否由内存淘汰开销引发
  • 随意重置事件统计,历史峰值证据丢失后失去对比基线
  • 用 LATENCY LATEST 的最大值代表当前状态,忽略它是历史累计峰值
  • 直接套用别处的类别清单,漏查本实例版本特有的类别

数据来源与参考

  • Redis 官方文档:延迟事件类型说明
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌