linux杀掉cpu使用率高的进程,线上linux系统故障排查之一:CPU使用率过高

一个应用占用CPU很高,除了确实是计算密集型应用之外,通常原因都是出现了死循环。

下面我们将一步步定位问题,详尽的介绍每一步骤的相关知识。

一、通过top命令定位占用cpu高的进程

执行top命令得到以下结果:

6d573e42310a

top命令执行结果

通过上图可以明显看出进程PID41843占用cpu过高,明显存在问题,定位到了进程id。当然如果你想只观察进程PID41843的CPU和内存以及负载情况,可以使用以下命令

top -p 41843。

结果如下:

6d573e42310a

top -p 41843命令执行结果

这里顺便解释下上图各个参数的意义,有利于读者更好的排查问题。

第一行是任务队列信息

top - 14:06:34 up 537 days, 6 min, 6 users, load average: 0.41, 0.45, 0.43

任务队列信息

含义

14:06:34

当前时间

537 days

系统运行时间

6 min

用户在线时间

6 users

在线用户数

load average: 0.41, 0.45, 0.43

系统负载,即任务队列的平均长度。1分钟前、5分钟前、15分钟前平均负载

2)第二行为进程的信息

进程信息

含义

Tasks: 1 total

进程总数

0 running

正在运行的进程数

1 sleeping

睡眠的进程数

0 stopped

停止的进程数

0 zombie

僵尸进程数

第三行为cpu信息

cpu信息

含义

6.1% us

用户空间占用CPU百分比

1.5% sy

内核空间占用CPU百分比

0.0% ni

用户进程空间内改变过优先级的进程占用CPU百分比

92.2% id

空闲CPU百分比

0.0% wa

等待输入输出的CPU时间百分比

0.0% hi

硬件中断

0.0% si

软件中断

0.0%st

实时

第四、五行为内存信息。

内容如下:

物理内存信息

含义

Mem: 191272k total

物理内存总量

173656k used

使用的物理内存总量

17616k free

空闲内存总量

22052k buffers

用作内核缓存的内存量

交换区信息

含义

Swap: 192772k total

交换区总量

0k used

使用的交换区总量

192772k free

空闲交换区总量

123988k cached

缓冲的交换区总量

<


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部