在linux系统环境的测试开发过程中,我们常常需要评估系统性能,尤其在性能测试工作中,我们需要通过系统资源的监控,从而分析定位系统的性能瓶颈。
首先,我们要知道从哪些维度来评估系统的性能好坏:
-
CPU利用率及负载
-
内存利用率
-
磁盘I/O利用率
-
网络利用率
如何监控上述系统资源的使用情况,有哪些常用的命令和工具呢。下面,就给大家罗列几个工作最常用的性能监控命令及工具,希望能对大家的工作有帮助。
1. vmstat
全称是Virtual Meomory Statistics(虚拟内存统计),对linux内存、进程及CPU活动进行监控,只能对系统整体情况进行统计。
常用参数:
-
-s:显示内存相关统计信息,
-
-a:显示活跃和非活跃内存
-
-d:显示磁盘相关统计信息
-
-t:显示时间
2. top
top是一个功能强大的性能监控工具,是linux使用者最常使用系统命令,作用类似于windows系统的任务管理器。能够实时监控系统的运行状态,主要显示系统中各个进程的资源使用情况,并根据cpu及内存等进行排序。
常用参数:
-
-d:设定刷新时间
-
-p:指定进程
3. iostat
I/O(输入输出)统计,对系统磁盘进行监控,输出磁盘读写的统计信息,只能进行整体分析。
常用参数
-
-c:显示CPU的使用情况
-
-d:显示磁盘的使用情况
4. netstat
netstat命令用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,检验本机各端口的网络连接情况。
常用参数:
-
-a:显示所有连接socket信息。
-
-t:显示所有TCP连接信息
-
-u:显示所有UDP连接信息
-
-p:显示socket所属进程的PID和名称
5. sar
sar系统活动情况报告(System Activity Reporter) 是一个非常全面的系统监控命令,可以获取系统的CPU、内存、进程活动,系统调用等信息。
常用参数:
-
-u:显示所有CPU在采样时间内的负载状态
-
-r:输出内存和交换空间的统计信息
-
-b:采样时间内缓冲区的使用情况
-
-n:显示网络运行状态
-
-d:硬盘设备在采样时间的使用情况
-
-q:运行队列的大小
6. nmon
nmon是一款计算机性能系统监控工具,因为它免费,体积小,安装简单,耗费资源低,广泛应用于AIX和Linux系统。需要单独安装,网上有很多安装的过程,这里就不多说了。
输入nmon后,可以使用如下命令:
-
c:显示CPU的信息
-
m:内存信息
-
n:系统网络信息
-
d:磁盘信息
-
t:系统的进程信息
常用参数:
-
-s:每隔n秒抽样一次
-
-c:取多少个抽样数量
-
-f:按标准格式输出文件名称YYMMDD_HHMM.nmon
-
-m:指定统计文件的保存目录
nmon-s1-c60-f-m/home/nmon
使用nmonanalyser可以把nmon采集的数据生成直观的Excel图表,如下:
7. dstat
多功能系统资源统计生成工具,需要单独安装。集成了vmstat,iostat和ifstat三种命令的功能,输出带颜色的信息,更加清晰的显示系统的整体运行情况。
常用参数:
-
-c:显示CPU系统占用
-
-d:显示磁盘读写数据大小。
-
-n:显示网络状态。
-
-m:显示内存使用情况。
-
-p:显示进程状态。
-
-s:显示交换分区使用情况。
-
-r:I/O请求情况。
一般使用按照如分类,进行性能工具选取,有时候需要几个命令配合使用,在使用命令选择上大家可以参考下图。
最后:下面是配套学习资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!【100%无套路免费领取】
软件测试面试小程序
被百万人刷爆的软件测试题库!!!谁用谁知道!!!全网最全面试刷题小程序,手机就可以刷题,地铁上公交上,卷起来!
8小时传疯!大厂面试真题全被大佬整理在这个小程序上了!【软件测试,建议收藏】
涵盖以下这些面试题板块:
1、软件测试基础理论 ,2、web,app,接口功能测试 ,3、网络 ,4、数据库 ,5、linux
6、web,app,接口自动化 ,7、性能测试 ,8、编程基础,9、hr面试题 ,10、开放性测试题,11、安全测试,12、计算机基础