cpu负载为什么会高(CPU负载与CPU使用率可不是一回事)
cpu负载为什么会高(CPU负载与CPU使用率可不是一回事)
2024-06-27 10:19:09  作者:你行你上别  网址:https://m.xinb2b.cn/life/ptr133026.html
1、简介

存储、内存和 Cpu(中央处理器)等系统资源不足会极大地影响应用程序的性能。因此,监控这些组件至关重要。

与磁盘和内存不同,监控 Linux 系统上的 CPU 使用率并不那么简单。在本文中,我们将了解如何解释 CPU 指标并以人类可读的格式显示它们。

2. CPU 负载与 CPU 使用率

尽管 CPU 负载和 CPU 使用率听起来很相似,但它们是不可互换的。cpu 负载定义为在单个时间点使用或等待使用一个内核的进程数。

假设我们有一个单核系统,我们的 CPU 平均负载始终低于 0.6。这表明每个需要使用 CPU 的进程都可以立即使用它,而无需等待。如果 CPU 平均负载大于 1,则表示有进程需要使用 CPU,但由于 CPU 不可用,目前无法使用。

但是,多处理器系统中高于 1 的平均负载不会成为问题,因为有更多内核可用。

uptime命令为我们提供了以 1、5 和 15 分钟为间隔的平均负载视图:

[root@localhost ~]# uptime12:40:05 up 2:29, 1 user, load average: 0.37, 0.08, 0.03

如果不知道系统的核心数,就无法解释平均负载:

[root@localhost ~]# cat /proc/cpuinfo |grep corecore id : 0cpu cores : 1

另一方面,CPU 使用率是 CPU 处理非空闲任务所花费的时间百分比。CPU 使用率只能在指定的时间间隔内测量。我们可以通过将空闲时间的百分比从 100 中减去来确定 CPU 使用率。

3.计算CPU使用率3.1 使用vmstat获取 CPU 使用率

vmstat命令近乎实时地显示 CPU 活动:

[root@localhost ~]# vmstat 3 4procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----r b swpd free buff cache si so bi bo in cs us sy id wa st4 0 0 1347080 6120 941464 0 0 68 11 72 137 1 2 97 0 01 0 0 1347080 6120 941464 0 0 0 0 84 157 1 2 97 0 01 0 0 1347080 6120 941464 0 0 0 0 59 107 1 1 98 0 01 0 0 1347080 6120 941464 0 0 0 1 59 104 1 1 98 0 0

CPU 下的列提供了处理器时间花费在哪里的概览:

us –运行非内核代码所花费的时间

sy -运行内核代码所花费的时间

id –空闲时间

wa –等待 I/O 所花费的时间

st -从虚拟机中窃取时间

id列是我们感兴趣的。延迟一秒,我们使用 vmstat 计算CPU使用率:

[root@localhost ~]# echo "CPU Usage: "$[100-$(vmstat 1 2|tail -1|awk '{print $15}')]"%"CPU Usage: 2%

没有提供任何参数的vmstat命令将给出自引导以来的 CPU 时间。这不会提供准确的 CPU 使用百分比。因此,参数只能是 1 和 2,我们采用一秒钟后计算的指标:

vmstat 1 2

3.2. 使用/proc/stat获取 CPU 使用率

CPU 活动也可以从/proc/stat文件中提取。该文件包含自启动以来有关系统的各种指标:

[root@localhost ~]# cat /proc/stat cpu 3020 28 1863 22404 35 432 47 0 0 0cpu0 3020 28 1863 22404 35 432 47 0 0 0intr 96468 28 100 0 0 0 0 0 0 1 0 0 0 1263 0 0 0 3696 0 153 928 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 207 0 41 14600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 343 97 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0ctxt 340950btime 1628404433processes 3276procs_running 2procs_blocked 0softirq 112867 1 16857 56 269 510 0 261 0 0 94913

第一行, 'cpu' 是系统所有核心指标的聚合。在具有 4 个内核的系统上,将有 4条cpu线——cpu0、cpu1、cpu2和cpu3。' cpu ' 行中的列表示处理不同任务所花费的时间:

user – 在用户模式下花费的时间

nice – 在用户模式下处理 nice 进程所花费的时间

system – 执行内核代码所花费的时间

idle - 空闲时间

iowait – 等待 I/O 所花费的时间

irq - 服务中断所花费的时间

softirq – 服务软件中断所花费的时间

steal —从虚拟机中窃取的时间

guest - 为来宾操作系统运行虚拟 CPU 所花费的时间

guest_nice – 为“不错的”客户操作系统运行虚拟 CPU 所花费的时间

我们将使用这些指标来计算平均空闲百分比。随后,我们将使用计算值来计算 CPU 使用率。需要注意的是,较旧的 Linux 发行版不计算窃取、来宾或来宾_nice指标。如果我们使用的是旧系统,我们会在计算中忽略这些指标:

平均空闲时间 (%) = (idle * 100) / (user nice system idle iowait irq softirq steal guest guest_nice)cat /proc/stat |grep cpu |tail -1|awk '{print ($5*100)/($2 $3 $4 $5 $6 $7 $8 $9 $10)}'|awk '{print "CPU Usage: " 100-$1}'CPU Usage: 2.4219

由于我们正在开发单核系统,因此“cpu”行将与“cpu1 ”相同。因此,tail -1 的使用是 只检索其中一行。然而,我们会在多处理器系统上使用“ cpu ”行,因为它是所有内核上的指标的集合。

3.3. 使用top获取 CPU 使用率

通常,top命令通常用于显示系统上的活动进程以及这些进程消耗了多少资源。不过,我们可以使用这个命令来测量 CPU 的状态:

[root@localhost ~]# toptop - 07:08:31 up 2:41, 1 user, load average: 0.00, 0.00, 0.00Tasks: 322 total, 2 running, 320 sleeping, 0 stopped, 0 zombie%Cpu(s): 10.0 us, 15.0 sy, 0.0 ni, 97.8 id, 0.0 wa, 5.0 hi, 0.0 si, 0.0 stMiB Mem : 3709.4 total, 1483.1 free, 1402.0 used, 824.4 buff/cacheMiB Swap: 2048.0 total, 2048.0 free, 0.0 used. 2053.4 avail Mem

此外,需要注意的是,top 命令显示了单个内核的 CPU 百分比。在多处理器系统中,CPU 百分比可能超过 100%。例如,如果 4 个核心为 75%,top命令将显示 CPU 为 300%。

我们需要获取空闲时间的值,以便我们可以从 100 中减去它来获得使用情况:

[root@localhost ~]# top -bn2 | grep '%Cpu' | tail -1 | grep -P '(....|...) id,'|awk '{print "CPU Usage: " 100-$8 "%"}'CPU Usage: 2.2%

-n选项是top命令在结束前应该使用的迭代次数。我们避免使用第一个循环,因为我们检索的指标将是自启动以来的值。因此,我们进行了第二次迭代。

或者,在多处理器系统中,我们必须将给定的“ id”值除以内核数,然后从 100 中减去该值。例如,如果我们在四核系统上运行,并且“ id ”值为 304%,我们将 CPU 使用率计算为:

CPU 使用率 % = 100 – (304/4)

[root@localhost ~]# top -bn2 | grep '%Cpu' | tail -1 | grep -P '(....|...) id,'|awk '{print "CPU Usage: " 100-($8/4) "%"}'

4.结论

在本文中,我们讨论了 CPU 使用率和 CPU 负载之间的区别。许多人交替使用这两个概念,这是不正确的。之后,我们深入研究了用于检索 CPU 利用率指标的各种方法。

原文:https://www.baeldung.com/linux/get-cpu-usage

翻译:IT运维技术圈

格式整理:IT运维技术圈

小编有话说

➤推荐服务:

向下滑动查看更多

点击【IT面试精选】查看全网最权威的一线大厂面试真题及面试经验,每天更新哦!

点击【IT路边社】查看实时更新的IT新闻资讯

点击【互联网资料存储站】获取全网最全运维流程文档、表格、脚本、架构、等保资料等点击【安全加固】获取最新安全加固脚本

点击【一键iptables脚本】获取iptables自动设置脚本

回复【加群】群满啦!~添加波哥微信拉您进群!

cpu负载为什么会高(CPU负载与CPU使用率可不是一回事)(1)

  • 鸡蛋山药拼的做法(鸡蛋山药拼的做法介绍)
  • 2024-06-27鸡蛋山药拼的做法介绍食材:面粉300克、山药30克、鸡蛋3个、白糖少许、干酵母3克山药去皮之后洗干净,然后放在锅里蒸熟盆里加入面粉,鸡蛋、山药泥、水,搅拌出来面糊就可以了面和好之后开始揉,在盆底抹上一层油,将揉好的面团放。
  • 如何写开学第一课观后感(以开学第一课为例谈怎样写观)
  • 2024-06-27以开学第一课为例谈怎样写观首先要弄明白什么是观(读)后感?观(读)后感,即观看完电视、电影、文章等作品之后的感想、感悟其中,“观”是基础,重点是“感”所谓“感”,可以是从作品中领悟出来的道理或精湛的思想,也可以是受作品内容启发。
  • 深海最大的龙虾(约200万分之一的概率)
  • 2024-06-27约200万分之一的概率中新网6月17日电据外媒报道,美国马萨诸塞州一间海鲜餐厅老板尼克松(NathanNickerson)在进货时,发现一只罕见的宝蓝色的龙虾,颜色相当均匀专家透露,蓝龙虾十分稀有,差不多每200万只才可能。
  • 哪个部位长痘意味着什么(代表不同内脏有问题)
  • 2024-06-27代表不同内脏有问题“最近额头总是冒痘痘,是不是上火比较严重啊?”“脸颊两边长痘痘是不是肝肺不太好?”“鼻头老是不停冒痘,是不是这段时间肠胃不太好?”等这些话语,相信许多人一定很熟悉,一旦哪个部位长痘就开始自己给自己“看。
  • 三月汽车销量排行榜介绍(3月汽车销量排行榜)
  • 2024-06-273月汽车销量排行榜【2020年3月汽车销量排行榜销量前十五轿车排名】4月10日傍晚,乘联会公布了最新乘用车销量数据:2020年3月,国内狭义乘用车市场零售销量104.5万辆,同比下降40.4%,环比增长317.3%20。
  • 肌肤护理的基本步骤(可以让你美上一个月)
  • 2024-06-27可以让你美上一个月女人们每个月总会有那么几天不舒服,不止会肚痛腰酸,而且脾气会变得很火爆总是一点就炸但你不知道的是这几天简直就是养护肌肤的最佳时间,只要在这几天做好肌肤的养护工作,就能让你肌肤美美的过上一个月哦那就让我。
  • 7岁孩子被继母灌下敌敌畏原(七岁男童被继母灌下敌敌畏)
  • 2024-06-27七岁男童被继母灌下敌敌畏2019年2月7号晚上7点,遂宁市蓬溪县公安局接到了一通报警电话报警人是一名年轻女性,名叫陈悦陈悦告诉接警员,自己的儿子——年仅七岁的小男孩儿周阳,失踪了蓬溪县公安局吉祥镇派出所所长王潜说:接近10点。
  • hello kitty主题乐园攻略(如果还没去过这个乐园)
  • 2024-06-27如果还没去过这个乐园如果你在杭州旅游或者工作生活,也许不经意间,就会遇见这趟最可爱的一号线地铁是的,杭州地铁的线路虽然不多,但内饰之考究已经数次惊艳了市民这套粉色系搭配足以唤醒无数饮食男女的少女心在地铁车厢里,清一色绘制。
  • 什么的大树填空形容词
  • 2024-06-27什么的大树填空形容词1、茂密的大树2、繁茂的大树3、茁壮的大树4、高高的大树5、粗壮的大树6、挺拔的大树7、笔直的大树8、参天的大树9、翠绿的大树10、绿色的大树11、绿油油的大树。
  • 水平对置的发动机好不好(细说水平对置发动机优缺点)
  • 2024-06-27细说水平对置发动机优缺点上一期,车叔给大家介绍水平对置引擎的布局方式以及其优点,今天车叔就要来给大家细说水平对置引擎的缺点,正是因为这些缺点,才导致越来越多的车企抛弃了这一引擎布局形式,转而采用动力更大、稳定性更佳、更具经济。
  • 跳绳锻炼哪些肌肉(跳绳锻炼好处)
  • 2024-06-27跳绳锻炼好处跳绳是以下肢部份为中心的全身运动,除了可使神经、肌肉、骨骼发达外,对内脏器官也有良好的刺激,可以提高其机能,因此对健康的保持与增进有相当大的功效跳绳可以锻炼腿部大腿、小腿肌肉、手腕力度,提高弹跳力,长。
  • 白灼血蛤最正宗的做法(一种扑朔迷离的味道)
  • 2024-06-27一种扑朔迷离的味道故事的小黄花,从出生那年就飘着,童年的荡秋千,随记忆一直晃到现在在记忆中,小时候的我是多么向往海边,总想要到海边看那海的对面究竟是什么?海,总是给人一种宽阔的感觉,我们那里近海,到海边不仅可以看到美丽。