linux CPU 负载高问题分析方法
linux CPU 负载高问题分析方法
文章目录
- linux CPU 负载高问题分析方法
- CPU
- 平均负载
- 平均负载含义
- 平均负载多少合理
- 平均负载与CPU使用率
- 如何分析平均负载过高问题
CPU
平均负载
平均负载含义
平均负载是指执行uptime后显示的Load Average(平均负载),单位时间内,系统处于可运行状态和不可中断状态的平均进程数,也就是平均活跃进程数。
平均负载多少合理
当平均负载比cpu个数还大的时候,系统已经出现了过载。要综合三个不同时间间隔的平均值去比较。
平均负载与CPU使用率
平均负载和CPU使用率不能混为一谈,平均负载高了并不意味这CPU使用率就会变高。平均负载是单位时间内,处于可运行状态和不可中断状态的进程数。所以,它不仅包括了正在使用CPU的进程,还包括等待CPU和等待I/O的进程。
而CPU使用率,是单位时间内CPU繁忙情况的统计,跟平均负载并不一定完全对应,比如:
- CPU 密集型进程,使用大量 CPU 会导致平均负载升高,此时这两者是一致的;
- I/O 密集型进程,等待 I/O 也会导致平均负载升高,但 CPU 使用率不一定很高;
- 大量等待 CPU 的进程调度也会导致平均负载升高,此时的 CPU 使用率也会比较高。
如何分析平均负载过高问题
- CPU密集型进程
通过mpstat查看CPU使用率的变化情况:
-P ALL 表示监控所有 CPU,后面数字 5 表示间隔 5 秒后输出一组数据
# -P ALL 表示监控所有 CPU,后面数字 5 表示间隔 5 秒后输出一组数据
$ mpstat -P ALL 5
Linux 4.15.0 (ubuntu) 09/22/18 _x86_64_ (2 CPU)
13:30:06 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
13:30:11 all 50.05 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 49.95
13:30:11 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
13:30:11 1 100.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
可以看到有一个 CPU 的使用率为 100%,但它的 iowait 只有 0。这说明,平均负载的升高正是由于 CPU 使用率为 100% 。
再通过pidstat查询到哪个进程导致cpu使用率100%。
# 间隔 5 秒后输出一组数据
$ pidstat -u 5 1
13:37:07 UID PID %usr %system %guest %wait %CPU CPU Command
13:37:12 0 2962 100.00 0.00 0.00 0.00 100.00 1 stress
I/O 密集型进程
同理,先通过mpstat查看usr和iowait的值,如果iowait比usr高,那说明是iowait的升高导致平均负载的升高。大量进程的场景
通过pidstat查看进程情况,如果多个服务都在抢少量的cpu,并且wait值都比较高的话,说明每个进程等待cpu的时间都很高,最终导致cpu过载。
linux CPU 负载高问题分析方法相关推荐
- 后台服务器CPU使用率高 问题分析方法
一.找出cpu使用率高的进程和线程: a.将 cpu 占用率高的线程找出来: ps H -eo user,pid,ppid,tid,time,%cpu,cmd--sort=%cpu b.对于多线程的服 ...
- 记录一次服务器CPU负载高,利用率正常的处理方法
背景: 在一次查看服务器监控的时候偶然发现其中一台服务器的CPU负载很高,但是CPU利用率基本没有,通过top命令完全看不出来问题所在,经过一些思路的排查发现了原因并处理,现记录下来. 现象: top ...
- linux物理内存地址与iomem,一种Linux系统物理内存镜像文件分析方法_4
模块信息,如图7所示,给出了本发明的实施例中 模块结构关系图,modules变量指向某一个已加载模块结构体module地址,所有已加载模 块其module形成一个双向链表,如图7所示,据此可以获取到所 ...
- (三) CPU 性能测试 (CPU负载高对应的不同情况)
下文通过命令stress命令进行演示CPU负载高对应的不同情况,stress用法可参考链接:stress 一.测试设备硬件资源情况 系统版本:Ubuntu 18.04.5 LTS CPU型号:Inte ...
- Mysql CPU占用高的问题解决方法小结
Mysql CPU占用高的问题解决方法小结 参考文章: (1)Mysql CPU占用高的问题解决方法小结 (2)https://www.cnblogs.com/shuaiandjun/p/566204 ...
- 资源管理器占用CPU过高的解决方法
有时我们在打开资源管理器的时候,发现cpu占用特别的高,这个是怎么回事呢?cpu过高不仅会导致电脑的运行速度变慢,还会加速硬件的使用年限,这种情况一般是后台运行的程序过多,具体的详情下面一起来看看吧. ...
- cpu占用高 本地服务器,win10系统服务主机本地系统cpu占用高的解决方法
很多小伙伴都遇到过win10系统服务主机本地系统cpu占用高的困惑吧,一些朋友看过网上零散的win10系统服务主机本地系统cpu占用高的处理方法,并没有完完全全明白win10系统服务主机本地系统cpu ...
- 执行计划变化导致CPU负载高的问题分析 (r8笔记第20天)
前几天碰到一个CPU负载较高的问题.从系统层面来看,情况不是很严重,但是从应用的角度来说,已经感觉到很慢了.因为前端的调用频率还是比较高.所以会把这个问题放大. Elapsed Time (s) CP ...
- linux性能测试 瓶颈,性能测试——瓶颈分析方法
1.内存分析方法 内存分析用于判断系统有无内存瓶颈,是否需要通过增加内存等手段提高系统性能表现. 内存分析需要使用的计数器:Memory类别和Physical Disk类别的计数器.内存分析的主要方法 ...
最新文章
- Android开发环境搭建与起步--太详细了,一步一步图文教你
- 测试无线节能信标与主控器之间的控制功能
- 手把手教你整合最优雅SSM框架
- pom env.java home_关于java:aven:POM.xml中缺少工件com.sun:tools:jar:1.6.0编译时异常...
- 刘国辉 :做银行背后的“卖水人”,是不是好生意?
- linux aria2 多线程,Mac/Linux 多线程下载解决方案(Aria2 YAAW是什么)
- Python爬虫入门【11】:半次元COS图爬取
- [poj3130][半平面交]How I Mathematician Wonder What You Are!
- canvas与CreateJS实现图片动画
- 查看变量 IFS 的值
- 阿里云视频直播,使用obs推流验证是否成功
- 第二章第二节.把梳子卖给和尚
- 超详细版企业离线部署CDH6.10集群与配置使用
- hijackthis.exe
- DAY TRADER
- [博摘]论人类最优秀软件
- yorc.json_天若OCR文字识别工具 v4.13 最全的OCR接口
- arduino控制一位数码管、控制二位数码管动态显示(用不到中断程序)
- 高频交易的四种经典算法
- 芯片系统分级-模电基础