01 简介
存储、内存和 CPU(中央处理器)等系统资源不足会极大地影响应用程序的性能。因此,监控这些组件至关重要。
与磁盘和内存不同,监控 Linux 系统上的 CPU 使用率并不那么简单。在本文中,我们将了解如何解释 CPU 指标并以人类可读的格式显示它们。
02 CPU 负载与 CPU 使用率
尽管 CPU 负载和 CPU 使用率听起来很相似,但 它们是不可互换的 。CPU 负载定义为在单个时间点使用或等待使用一个内核的进程数。
假设我们有一个单核系统,我们的 CPU 平均负载始终低于 0.6。这表明每个需要使用 CPU 的进程都可以立即使用它,而无需等待。如果 CPU 平均负载大于 1,则表示有进程需要使用 CPU,但由于 CPU 不可用,目前无法使用。
但是,多处理器系统中高于 1 的平均负载不会成为问题,因为有更多内核可用。
uptime命令为我们提供了以 1、5 和 15 分钟为间隔的平均负载视图:
csharp
代码解读
复制代码
[root@localhost ~]# uptime 12:40:05 up 2:29, 1 user, load average: 0.37, 0.08, 0.03
如果不知道系统的核心数,就无法解释平均负载:
shell
代码解读
复制代码
# cat /proc/cpuinfo |grep corecore id : 0cpu cores : 1# cat /proc/cpuinfo |grep corecore id : 0cpu cores : 2core id : 0cpu cores : 2core id : 1cpu cores : 2core id : 1cpu cores : 2
另一方面,CPU 使用率是 CPU 处理非空闲任务所花费的时间百分比。CPU 使用率只能在指定的时间间隔内测量。我们可以通过将空闲时间的百分比从 100 中减去来确定 CPU 使用率。
03 计算CPU使用率
1、使用vmstat获取 CPU 使用率
vmstat命令近乎实时地显示 CPU 活动:


发布评论