linux 统计进程资源占用情况,Linux系统中各资源的占用情况

一、cpu

1、我们可以使用top来查看cpu的总的使用及每个进程的使用情况

d50946b30d77

image.png

“Cpu(s): 0.5%us, 0.7%sy, 0.0%ni,98.8%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st”,

我们可以看到用户空间占用CPU百分比是0.5%,内核空间占用CPU百分比是0.5%,空闲比是98.8% 说明cpu资源还有很多,这个时候我们不需要关心每个进程的使用情况

2、找出占用cpu较高的进程

按大写的P是按照cpu排序,这样我们就能看到占用CPU最多的进程, 用top -c 可以看到详细的COMMAND的信息,定位到具体的脚本文件。

3、查看线程内存使用情况

我们可以top -d 进程号 如:top -d 10677 单独查看占用cpu最高的进程id,然后按H可以查看此进程的线程的cpu的使用情况,这个时候PID就变成了线程id,然后同样我们也按下大写P来进行cpu的排序 找到占用cpu最高的线程信息,进而定位到问题

二、内存

1、使用free -h名查看机器总的内存使用情况

d50946b30d77

image.png

图上,磁盘总的大小是296G 使用了 27G,可用 254G,使用率10%,磁盘的使用率并不高,不用担心

2、如果磁盘使用率很高 也可以像查找cpu那样找出 占用内存较高的进程

三、磁盘

1、首先使用df -h名查看机器总的磁盘使用情况

d50946b30d77

image.png

图上,磁盘总的大小是296G 使用了 27G,可用 254G,使用率10%,磁盘的使用率并不高,不用担心

2、如果磁盘使用率很高

我们采用逐层查看的方式

du -sh /* | sort -nr

可以得到 / 目录下所有文件和目录的大小的排序结果。

从中找出最大的,在我的机器中/var文件占用了47个G的大小,应该就是它了,使用上面的命令继续追踪:

du -sh /var/* | sort -nr

du -sh /var/log/* | sort -nr

du -sh /var/log/httpd/* | sort -nr

最后找到 暂用磁盘较多的文件

3、使用 find

我们也可以配合find命令查询一些较大文件 比如

find ./ -size +1G -exec du -h {} \;

这个命令可以列出 大于1G的文件列表

四、IO

1、通过iostat -d 1 1查看指定磁盘吞吐量和速率

[root@localhost ~]# iostat -d 1 1

Linux 2.6.32-573.el6.x86_64 (localhost) 06/30/2017

_x86_64_ (4 CPU)

Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn

sda 0.14 0.08 3.31 1939830 83482716

dm-0 0.42 0.07 3.30 1872538 83282120

dm-1 0.00 0.00 0.00 39840 124112

dm-2 0.00 0.00 0.00 2002 76424

dm-3 0.00 0.01 0.00 254810 14320

从结果看到平均传输次数0.14,每秒读取0.08M,每秒写3.31M

2、iostat -x 1 1 查看磁盘io的性能

d50946b30d77

image.png

说一下 -x参数输出列意思

rrqm/s:每秒这个设备相关的读取请求有多少被Merge了(当系统调用需要读取数据的时候,VFS将请求发到各个FS,如果FS发现不同的读取请求读取的是相同Block的数据,FS会将这个请求合并Merge);

wrqm/s:每秒这个设备相关的写入请求有多少被Merge了。

rsec/s:每秒读取的扇区数;

wsec/s:每秒写入的扇区数。

r/s:The number of read requests that were issued to the device per second;

w/s:The number of write requests that were issued to the device per second;

await:每一个IO请求的处理的平均时间(单位是毫秒)。这里可以理解为IO的响应时间,一般地系统IO响应时间应该低于5ms,如果大于10ms就比较大了。

%util:在统计时间内所有处理IO时间,除以总共统计时间。例如,如果统计间隔1秒,该设备有0.8秒在处理IO,而0.2秒闲置,那么该设备的%util = 0.8/1 = 80%,所以该参数暗示了设备的繁忙程度。一般地,如果该参数是100%表示设备已经接近满负荷运行了(当然如果是多磁盘,即使%util是100%,因为磁盘的并发能力,所以磁盘使用未必就到了瓶颈)。

3、使用iotop命令查看 io较高的进程

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值