linux性能指令分析进阶篇

作为刚刚走入测试领域的我来说,对性能测试了解的也不是很深,只不过自己平常一直在收集资料,性能测试也没有那么神秘,也请广大测试小白不要陷入误区,其实性能测试跟功能测试关系并不大,即使你做10年功能测试,也转不了性能;除非你就想做性能测试,并一直学习性能方面知识;

那么性能测试到底需不需要代码能力,答案是肯定的;一些知名公司都是自己的测试开发性能工具更适合自己本公司的性能分析需求,像市面上常见的loadrunner,jmeter一般都不适用于或者不能满足于一些特殊需求,查看一些数据比较麻烦或者需要借助其他工具;

这里我们着重讲解linux下的性能指令及数据分析

进程管理

&  后台运行指令 语法 在指令后面加上&即可 例:find / -name install.logs.syslog &  完成任务会提示done

fg 将后台工作推到前台  语法:fg %number

jobs  显示后台任务 

ps  aux/-ef   显示当前进程  例查找tomcat进程是否启动  ps aux|grep java

w 查看系统负载  1分钟  5分钟  15分钟的负载值大于CPU个数证明系统有压力,需要关注

vmstat  当前系统状态  procs进程:r(运行或等待CPU时间片的进程数)如果大于CPU数,说明CPU不够用

                                              b(等待资源的进程数) 如果长时间大于1说明系统负载比较大

                               memory内存:swpd切换到交换区间的内存数量 si(由内存写入交换区的数量)so(由交换区写入内存的数量) *如果SI SO不为零 说明内存不够用,或者程序内存泄露

                                                   free 空闲磁盘大小

                                                   buff  即将写入磁盘的缓存大小

                                                   cache  即将读取磁盘大小

                               io 磁盘:bi 从快设备读取磁盘的量       (bi bo 数值较大说明系统存在压力,需要关注)

                                           bo写磁盘的量

                               system采集间隔时间内发生中断次数:in每秒设备中断数 cs每秒上下文切换数

                               cpu:us 每个用户花费CPU的百分比 sy 系统花费CPU时间的百分比 id CPU处于空闲状态的时间百分比 wa IO等待所占CPU时间百分比  st 被偷走的CPU所占时间百分比

top  与vmstat不同的在于top可以实时的查看系统状态  同时也可以显示出进程数tasks   平均负载量load average  内存 磁盘  交换区内存情况 ; 同时配合参数 -bn1 可以截取某一时间的系统状态;

free 查看内存的使用情况  -b字节  -k -m兆 -t总共

kill  停止或者杀死进程  通过进程号PID或者是任务号 -l(kill -l 查询信号编号) -s指定发送信号9(kill -s9无条件终止进程)

netstat 查看网络状况 例 netstat -lnp |less   查看当前系统占用了哪些端口  netstat -an|grep 8080 查看8080端口都被哪些进程占用

ifconfig 查看IP  加参数修改IP等  ifconfig eth0 172.31.3.285   ifconfig eth0 down/up

ping  IP网址与本机链接状况 -c(数字,次数)  ctrl+c