首页/系统/信创系统运维速查/负载均值解读与高负载定位
服务与运维65 条

负载均值解读与高负载定位

uptime 的 load average 是 1/5/15 分钟可运行与不可中断进程均值:对比 CPU 核数判断是否过载,再用 ps/vmstat/iostat 分辨 CPU、IO 还是 D 状态阻塞。

信创系统运维速查系统更新于 2026-10-13

负载均值的真实含义

负载均值统计的是单位时间内在两个队列里的平均进程数:等待处理器调度的可运行进程,以及处于不可中断等待状态(通常是等磁盘或网络存储返回)的进程。所以负载高不等于处理器忙,等待输入输出的进程同样计入。判断是否过载必须把它们换算到处理器核数上比较:单核机器负载为二已经很重,而多核机器上同样的数值可能还很轻松。持续时间也要看,短时突发与长时间高位是两种性质的问题。

基本信息

查看方式uptime 或系统负载文件
三个数值依次为 1 分钟、5 分钟、15 分钟均值
判断基准与处理器核数比较,超过核数说明有明显排队
参考文件系统负载文件还包含可运行进程数与进程总数
核数查询nproc 查看可用处理器核数
辅助工具进程列表、虚拟内存统计、磁盘输入输出统计

典型使用场景

  • 收到负载告警:先确认核数与持续时长,再判断是否真的过载
  • 区分瓶颈类型:看是等处理器还是等输入输出,决定优化方向
  • 定位元凶进程:按处理器占用排序找出最耗资源的前几名
  • 确认存储问题:输入输出统计里等待比例高说明存储是瓶颈
  • 变更后复核:调整参数或扩容后对比同一时间窗口的负载变化
  • 容量评估:把高峰期负载与核数对比,作为扩容依据

定位命令

定位命令
uptime                                   # 负载均值一眼看
nproc                                    # 处理器核数,用于换算判断
cat /proc/loadavg                        # 含可运行进程数与总进程数
ps -eo pid,stat,pcpu,pmem,comm --sort=-pcpu | head -15   # 最耗处理器的进程
ps -eo pid,stat,comm | awk '$2 ~ /D/' | head -20          # 找出不可中断等待的进程
vmstat 1 5                               # 观察运行队列与等待输入输出的进程数

状态与现象对照

观察点含义下一步
可运行进程多在排队等处理器看最耗处理器进程,评估核数是否够
不可中断等待多卡在磁盘或网络存储检查存储延迟与网络文件系统
上下文切换极高进程争抢或频繁唤醒结合进程与锁竞争分析
等待比例高处理器大量时间空转等输入输出优先解决存储侧瓶颈
短时高位后回落突发任务造成确认对应时段的批处理任务
负载高于核数并不一定说明异常:批量任务、备份窗口、软件编译都会造成短时高位。判断标准应放在「持续十五分钟的均值」与「业务响应是否劣化」这两点上,二者都正常时不必急于干预。
区分等待类型是关键:等处理器的进程处于可运行状态,等输入输出的进程处于不可中断状态。后者大量出现时,加处理器没有意义,应该从磁盘、存储链路或网络文件系统入手。

易错点

  • 拿负载数值直接与固定阈值比较,不看核数差异,多核机器被误判为故障
  • 把等待输入输出的高负载当成处理器不足,扩容处理器后问题依旧
  • 只看 1 分钟均值就对突发的批处理任务大动干戈,忽略 15 分钟均值其实平稳
  • 不做基线记录,出问题时没有可比数据,无法判断是恶化还是常态

数据来源与参考

  • man 1 uptime(procps)
  • 红帽性能调优指南(负载)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌