4. CPU 监控

管理 Linux 系统的基本技能是了解其性能。用于快速健康检查的最有用的命令之一是 uptime

pete@icebox:~$ uptime
 17:23:35 up 1 day,  5:59,  2 users,  load average: 0.00, 0.02, 0.05

虽然我们之前见过 uptime,但让我们专注于 load average(负载平均值)字段,这对 Linux CPU 监控至关重要。

理解负载平均值

负载平均值提供了系统 CPU 负载的快照。这三个数字代表过去 1 分钟、5 分钟和 15 分钟时间间隔内的平均 CPU 负载。但什么是 CPU 负载?它是处于运行队列中的进程的平均数量,意味着它们要么正在被 CPU 积极执行,要么正在等待执行机会。这个指标是 进程利用率 和整体 系统性能 的关键指标。

交通比喻

将单核 CPU 想象成一条单车道高速公路。

  • 如果高速公路完全饱和,车流稳定,则交通量为 100%,对应负载平均值为 1.0。
  • 如果发生严重交通堵塞,车辆积压量是高速公路容量的两倍,则负载为 200%,即负载平均值为 2.0。
  • 如果高速公路半空,负载为 0.5。
  • 理想情况下,您希望负载平均值较低,就像凌晨 2 点没有交通的高速公路一样。

在这个比喻中,汽车是等待 CPU 处理的进程。

在现代系统上解释负载平均值

负载平均值为 1.0 并不一定意味着您的系统运行困难。大多数现代计算机都配备了多核处理器。如果您使用的是四核(4 核)处理器,负载平均值为 1.0 意味着仅使用了 25% 的总 CPU 容量。每个核心就像高速公路上增加了一条车道。

为了正确解释负载平均值,您必须考虑 CPU 核心的数量。您可以使用命令 cat /proc/cpuinfo 查看系统上的核心数。

良好 系统性能 的一个通用法则是将负载平均值保持在核心数以下。如果您发现机器的负载平均值持续高于其核心数,这可能表明存在性能瓶颈,例如失控的进程或不足的硬件资源。

登录以保存您的学习进度

登录

练习

为了获得 Linux CPU 监控 和分析 系统性能 的实践经验,请尝试以下动手实验。它们将帮助您在现实场景中应用 负载平均值进程利用率 的概念。

  1. 管理和监控 Linux 进程 - 练习使用 pstop 等工具与进程交互和检查进程,并监控资源,这直接关系到理解 CPU 负载。
  2. Linux top 命令:实时系统监控 - 学习使用 top 命令进行实时系统监控,包括排序进程和过滤,从而深入了解 CPU 和进程活动。
  3. Linux free 命令:监控系统内存 - 学习监控和分析系统内存使用情况,内存通常是与 CPU 负载一起影响整体系统性能的关键因素。

测验

您可以使用什么命令来查看系统的负载平均值?请用英语回答,并注意该命令区分大小写。