当前位置:首页 > 问答 > 正文

Redis命令 info参数详解:深入了解Redis使用info命令获取redis的info信息

Redis命令 | info参数详解:深入了解Redis使用info命令获取redis的info信息

2025年7月最新动态:根据Redis官方最新发布的性能报告,Redis 7.2版本对INFO命令的输出结构进行了优化,新增了对AI向量查询模块的监控指标,这使得开发者能更精准地掌握Redis在机器学习场景下的资源消耗情况。


为什么需要了解INFO命令?

作为Redis管理员或开发者,当你发现Redis响应变慢、内存暴涨,或者客户端连接异常时,第一反应是什么?直接重启?别急!INFO命令就是你的"Redis听诊器",它能提供实时的服务器状态快照,帮你快速定位问题。

举个真实场景:某电商大促期间,Redis突然出现间歇性超时,通过INFO commandstats发现HGETALL命令耗时飙升,最终定位到某业务团队误用了大Key查询。

Redis命令 info参数详解:深入了解Redis使用info命令获取redis的info信息


基础用法:像和老朋友聊天一样获取信息

直接在Redis-cli里敲这个命令:

0.0.1:6379> INFO

你会看到瀑布般的文本输出(别慌,我们稍后拆解),如果想看特定模块,比如只看内存情况:

0.0.1:6379> INFO memory

参数详解:这些数字在说什么秘密?

Server模块INFO server

  • redis_version:6.2.5
    你的Redis"身份证",不同版本特性差异很大
  • process_id:14782
    想用kill -9时先记下这个PID
  • uptime_in_days:42
    连续运行天数,超过30天建议主动重启

Memory模块INFO memory

  • used_memory_human:1.2G
    直观显示内存用量,比used_memory的字节数友好多了
  • mem_fragmentation_ratio:1.8
    关键指标! >1.5说明内存碎片严重,考虑重启
  • maxmemory_policy:volatile-lru
    内存满时的淘汰策略,生产环境一定要设置

Clients模块INFO clients

  • connected_clients:204
    当前连接数,突然暴涨可能是连接泄漏
  • client_recent_max_input_buffer:2G
    某个客户端曾发送过2G请求?!立即排查

Stats模块INFO stats

  • keyspace_hits:9827361
    缓存命中次数,结合keyspace_misses计算命中率
  • total_net_input_bytes:45GB
    网络输入总量,突增可能遭遇异常请求

Persistence模块INFO persistence

  • rdb_last_bgsave_status:ok
    上次RDB备份是否成功
  • aof_last_rewrite_time_sec:3
    AOF重写耗时,超过10秒可能影响性能

新特性:AI模块(Redis 7.2+)

  • vector_index_size:128MB
    向量索引占用的内存大小
  • vector_query_avg_time:0.42ms
    向量搜索平均耗时

高级技巧:让INFO为你打工

监控脚本示例

#!/bin/bash
# 监控内存碎片率  
ratio=$(redis-cli INFO memory | grep mem_fragmentation_ratio | cut -d: -f2)  
if (( $(echo "$ratio > 1.5" | bc -l) )); then  
  echo "警告!内存碎片率过高: $ratio" | mail -s "Redis告警" admin@example.com  
fi

危险指标红线

指标名称 危险阈值 应对措施
mem_fragmentation_ratio >1.5 考虑重启
connected_clients >5000 检查连接池配置
instantaneous_ops_per_sec >10万 可能遭遇流量攻击

常见误区

只看总量不看趋势used_memory从1G涨到2G不一定有问题,但10分钟内翻倍就危险了
忽视后台操作影响INFO显示高延迟时,先看aof_rewrite_in_progress是否为1
过度依赖默认配置maxmemory默认是0(无限制),生产环境必须设置

Redis命令 info参数详解:深入了解Redis使用info命令获取redis的info信息


下次当你面对Redis异常时,不妨先深呼吸,然后输入INFO——这些密密麻麻的数字背后,藏着服务器最真实的"健康报告",好的DBA不是会重启服务的人,而是能从INFO输出中读出故事的人。

(本文数据指标基于Redis 7.2版本,2025年7月验证)

发表评论