Linux系统性能监控--CPU利用率
作者:网络转载 发布时间:[ 2016/10/13 10:44:40 ] 推荐标签:操作系统 Linux
[huangc@V-02-01-00860~]$top
top-15:17:44up78days,5:17,13users,loadaverage:0.00,0.10,0.12
Tasks:227total,1running,225sleeping,1stopped,0zombie
Cpu(s):7.8%us,12.1%sy,0.0%ni,79.9%id,0.0%wa,0.0%hi,0.2%si,0.0%st
Mem:8193720ktotal,6315000kused,1878720kfree,47436kbuffers
Swap:4128760ktotal,3852496kused,276264kfree,5054928kcached
PIDUSERPRNIVIRTRESSHRS%CPU%MEMTIME+COMMAND
2301seeproxy2002196m13m660S15.50.215285:39/home/seeproxy/seeproxy/python27/bin/python/home/seeproxy/seeproxy/seeproxy.p
30824huangc200872m17441096S7.30.064:05.38hsserver-fwarmstandby_hc.xml-startproxysvr-tar-s1-status0
32729zhouds2001958m41m936S4.60.562:54.17hsserver-ffront_demo.xml-startmainsvr-tar-s0-status0
32740zhouds2002818m35m736S4.60.471:29.01/home/zhouds/linux.x64/bin/hsserver-fqueue_demo.xml-tar-s0-d/home/zhou
1307shizj200144g335m800S4.04.260:50.38hsserver-fshizj_uft.xml-startmainsvr-tar-s0-uft_status1-system_type
498zhouds2002722m48m5920S3.30.646:57.94hsserver-fuft_demo.xml-startmainsvr-tar-s0-status0-system_type0-l
1496shizj20026.6g11m1188S3.30.143:37.45hsserver-fshizj_init.xml-startmainsvr-tar-s0-status0
30829huangc2001355m19m796S3.30.245:27.38/home/huangc/linux.x64/bin/hsserver-fwarmstandby_hc.xml-tar-s1-d/home/
1303shizj2001286m6120728S2.30.130:22.74hsserver-fshizj_arb.xml-startarbsvr-tar-s0-status0
32723zhouds2001234m17m668S2.30.233:27.00hsserver-farb_demo.xml-startarbsvr-tar-s0-status0
32725zhouds200614m632392S1.60.017:38.62hsserver-fqueue_demo.xml-startproxysvr-tar-s0-status0
13284huangc200150361336948R1.00.00:00.10top
1341root2008229214121104S0.30.0154:38.71/usr/sbin/vmtoolsd
1750root20013584288220S0.30.015:07.26lldpad-d
1root20019364312136S0.00.00:15.99/sbin/init
2root200000S0.00.00:00.68[kthreadd]
3rootRT0000S0.00.00:10.29[migration/0]
4root200000S0.00.036:04.74[ksoftirqd/0]
5rootRT0000S0.00.00:00.00[migration/0]
[huangc@V-02-01-00860~]$
top的输出结果中包括以下信息:
· 第 1 行显示系统正常运行时间,包括当前时间、 系统自从上次重启后已运行的时间长度、 当前用户数量, 以及 3 个用于表示在先前的 1min 、 5min 和 15min 内准备运行的平均处理器数目的平均负荷值。
· 第 2 行给出进程的统计信息,包括在 top 输出结果的上次更新之际正在运行的进程 总数。 这一行还显示睡眠中的进程、 运行中的进程、 僵尸进程以及已停止进程的数目。
· 第 3 行和第 4 行显示各个 CPU 的统计信息,包括用户进程、 系统进程、 niced 进程 以及空闲进程所占用的 CPU 时间百分比。
· 第 5 行提供了内存统计信息,包括内存总量、已用内存量、空闲内存量、不同进程 共享的内存量,以及用作缓冲区的内存量。
· 第 6 行显示了虚存或交换活动的统计信息,包括交换空间总量、已用的交换空间大 小、空闲的交换空间大小以及缓存的交换空间大小。
其余各行显示了具体进程的统计信息。一些更有用的 top
参数如下所示:
· d 输出数据的更新延迟。
· p 只显示指定进程的信息。多可指定 20 个进程。
· S 显示进程及其子进程所占用时间的汇总信息,还给出进程的停工时间。
· I 不报告空闲进程的信息。
· H 显示进程的所有线程信息。
· N 生成报告的次数。
top 还提供了一种动态模式修改所报告的信息。按下 F 键可以激活动态模式。再按下 J 键, 可以添加一个新列来显示某个当前执行的进程近使用的 CPU时间。
三、sar工具
sar 是 sysstat 工具包的组成部分。它收集并报告操作系统中广泛的系统活动,包括 CPU 利用率、 上下文切换和中断速率、 页换入和页换出速率、 共享内存使用情况、 缓冲区使用情况以及网络使用情况 。 sar(1)
工具很有用, 它不断地收集系统活动信息并将其记录到一组日志文件中, 从而有可能在报告性能衰退事件之前以及在该事件之后评估性能问题 。
sar 常常用于确定事件的时间,也可用于标识特定的系统行为变化。 sar 可以使用更短的时间间隔或固定数目的时间间隔来输出信息,这非常类似于 vmstat 。基于数量和时间间隔参数的取值, sar 工具以指定的时间间隔 ( 以秒为单位 ) 执行指定次数的信息输出操作。另外, sar可以为所收集的许多数据点提供平均信息。
1、CPU利用率
[huangc@V-02-01-00860 ~]$ sar -u -P ALL -C 5
Linux 2.6.32-431.el6.x86_64 (V-02-01-00860) 10/12/16 _x86_64_ (2 CPU)
15:50:19 CPU %user %nice %system %iowait %steal %idle
15:50:24 all 3.38 0.00 5.28 0.00 0.00 91.34
15:50:24 0 3.39 0.00 5.30 0.00 0.00 91.31
15:50:24 1 3.36 0.00 5.25 0.00 0.00 91.39
15:50:24 CPU %user %nice %system %iowait %steal %idle
15:50:29 all 3.17 0.00 4.66 0.00 0.00 92.17
15:50:29 0 3.40 0.00 4.25 0.00 0.00 92.36
15:50:29 1 2.75 0.00 5.08 0.00 0.00 92.16
15:50:29 CPU %user %nice %system %iowait %steal %idle
15:50:34 all 2.95 0.00 5.16 0.00 0.00 91.89
15:50:34 0 3.36 0.00 5.25 0.00 0.00 91.39
15:50:34 1 2.75 0.00 4.86 0.00 0.00 92.39
网络和磁盘服务进程是耗用 CPU 的系统组件之一。当操作系统生成 I/O 活动时, 相应的设备子系统会作出响应,并使用硬件中断信号来指示 I/O 请求已完成。 操作系统对这些中断进行计数。 输出结果有助于可视化呈现网络和磁盘 I/O 活动的速率。 sar(1) 提供了这种输入。利用性能基线也许可以对系统中断速率进行跟踪,这将是操作系统开销的另一个来源或者系统性能潜在变化的指示器。“ -I SUM ” 选项可以生成如下信息,包括每秒的中断总次数。“ -I ALL ” 选项可以为每个中断源提供类似信息 ( 未显示 )。
2、中断速率
10:53:53 INTR intr/s
10:53:58 sum 4477.60
10:54:03 sum 6422.80
10:54:08 sum 6407.20
10:54:13 sum 6111.4010:54:18 sum 6095.40
10:54:23 sum 6104.81
10:54:28 sum 6149.80
. . .
Average: sum 4416.5
在 可以通过 sar -A 命令获得基于 CPU 的中断分布视图 ( 以下示例摘录自完整的输出结果 ) 。注意系统的 IRQ 取值为 0 、 1 、 2 、 9 、 12 、 14 、 17 、 18 、 21 、 23 、 24 和 25。
3、中断分布
中断分布的研究可能揭示出中断处理机制中的不平衡性。下一步需要对调度器进行分析。解决该问题的一种方法是通过为特定设备的中断 ( 或 IRQ) 设置与某个特定 CPU 或一组 CPU 相关的亲合度,将 IRQ
处理绑定到特定的某个处理器或许多处理器上。 例
如,如果
0x0001 被回显到 /proc/irq/ID( 其中 ID 对应于一个设备 ) ,则只有 CPU 0 才处理该设备的 IRQ ;如果 0x000f 被回显到 /proc/irq/ID ,则 CPU 0 ~ CPU 3 将负责处理该设备的 IRQ 。对于某些工作负荷而言,这种技术可以减少在繁重使用的特定处理器上发生的竞争现象。这项技术可以更高效地处理 I/O 中断,从而相应地提高 I/O 性能 。
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系SPASVO小编(021-61079698-8054),我们将立即处理,马上删除。
相关推荐
Linux下开源的DDR压力测试工具曝Linux恶意软件:让树莓派设备挖掘数字货币linux系统中不同颜色的文件夹及根目录介绍软件测试工程师必知必会Linux命令Linux下DNS服务器配置如何成为不可替代的Linux运维工程师?详解Linux进程(作业)的查看和杀死Linux 日志定时轮询流程详解比特币勒索病毒不只Windows系统有,Linux版的来了Linux日志定时轮询流程详解Linux iommu和vfio概念空间解构Linux系统如何低于TCP洪水攻击Linux无损调整分区大小Linux下防火墙配置实例Linux使用Jexus托管Asp.Net Core应用程序Linux中引号的那些事
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11热门文章
常见的移动App Bug??崩溃的测试用例设计如何用Jmeter做压力测试QC使用说明APP压力测试入门教程移动app测试中的主要问题jenkins+testng+ant+webdriver持续集成测试使用JMeter进行HTTP负载测试Selenium 2.0 WebDriver 使用指南