首页/数据/Redis 进阶速查/上线前性能预检清单
性能与排障129 条

上线前性能预检清单

预检项:内存水位与余量、慢命令基线、大键扫描、连接上限与内核参数、持久化状态、监控告警就绪、压测报告归档。

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

上线前要确认什么

预检项包括:内存水位与余量、慢命令基线、大键扫描、连接上限与内核参数、持久化状态、监控告警就绪、压测报告归档。预检要在与生产同规格的环境做,结论才有迁移价值;走形式不留档的预检,复盘时等于没做。

基本信息

资源类内存水位、连接上限、内核参数
数据类大键扫描、慢日志基线
体系类监控告警就绪与压测报告
环境要求与生产同规格

典型使用场景

  • 新实例上线前的容量与配置确认
  • 版本升级前的兼容性与性能基线采集
  • 大促或活动前的余量确认
  • 新业务接入前的键规模与访问模式评估
  • 变更窗口开启前的最后一道检查

预检命令清单

预检命令清单
redis-cli INFO memory | grep -E 'used_memory_human|maxmemory_human'
redis-cli CONFIG GET maxclients            # 连接上限,与内核句柄配置核对
redis-cli --memkeys -i 0.1                 # 大键扫描,按内存口径排名
redis-cli SLOWLOG GET 10                   # 慢日志基线
redis-cli INFO persistence | grep -E 'rdb_last_bgsave_status|aof_last_write_status'
redis-cli INFO replication | grep -E 'role|master_link_status'
ulimit -n                                  # 进程文件描述符上限

预检项与后果

预检项检查内容不通过的后果
内存水位相对 maxmemory 的余量上线后很快触发淘汰
连接上限maxclients 与 ulimit 是否对齐高并发时连接被拒
大键扫描是否存在异常大的键阻塞与内存突刺风险
慢日志基线现有慢命令的分布无基线则无法判断变更后的退化
持久化状态最近一次落盘是否成功故障时没有可恢复的数据点
监控告警关键指标是否已配置并验证出问题无人知晓
压测报告是否归档并写明方法容量结论无据可依
内核相关项容易被漏掉:TCP backlog、文件描述符上限、透明大页等设置会影响高并发下的表现,而它们都不在 Redis 的配置文件里。
预检清单要有明确的不通过处置规则:是阻断上线还是登记为已知风险,事先约定清楚,否则预检结果没人真正采信。
每次预检的结果要与上一次的基线对比,趋势比绝对值更能说明问题,例如大键数量缓慢增加就是一个需要提前处理的信号。

易错点

  • 预检走形式不留档:复盘时无据可查,同类问题重复发生
  • 不在与生产同规格的环境预检:结论无法迁移到生产
  • 只查 Redis 配置不看系统参数:内核限制成为真正的瓶颈
  • 没有不通过处置规则:发现问题也照样上线

数据来源与参考

  • Redis 官方实践:上线检查
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌