Linux 性能监控 —— Load Average

一. 简单介绍
top、 uptime、 cat /proc/loadavg 命令中 Load average: 4.90, 5.51, 5.77       
整体含义: 正在执行的任务数量 + 排队的任务数量
第一个数字比如上述的 4.90 代表上 1 分钟的数据
第二个数字比如上述的 5.51 代表前 5 分钟的数据
第三个数字比如上述的 5.77 代表前 15 分钟的数据


二. 多核和多 CPU 的差别
1 个 CPU 单核系统 Load average:1 表示有 1 个正在执行任务, 1 个 CPU 双核系统 Load average:2 表示有 2 个正在执行任务

负载能力:  2 个 CPU 单核 = 1 CPU 双核、 1 个 CPU 4 核 = 2 CPU 双核 (总核数相等则负载能力相近)


三. 怎样反映性能问题
如果系统是 1 个 CPU 单核

  1. 假设负载为 0.7, 而且长时间大于 0.7(观察前 5 分钟、 15 分钟数据), 那么须要去调查一下原因。 以免进一步恶化 

  1. 假设负载为 1, 而且长时间大于 1。 须要立马发现问题并修复它

  1. 假设负载为 5。 而且长时间大于 5, 整个系统会慢下来。 页面载入不出来。 等严重问题出现

假设是多 CPU 多核, 依此类推, 当 load average 达到总核数的时候, SA(System Administration)应该会提示报警。 研发人员就要去定位问题, 解决这个问题。 


四. 指标高的可能原因
  1. 并发数高
  2. 一些耗时的操作占用 CPU(注意缓存是否到位)


五. 參考资料
原文地址:https://www.cnblogs.com/lytwajue/p/7256300.html