说到一台Linux服务器的性能,大部分人关注的指标如下:CPU利用率,CPU LOAD,内存利用率,磁盘I/O等待率,网络带宽使用率。Jmeter作为性能测试的强大工具,在其插件JMeterPlugins-Standard和JMeterPlugins-Extras是客户端的,ServerAgent.zip是服务器端的帮助下,可以很方便的获取到对应的内容。
但是当我们并非通过Jmeter进行性能测试时,还可以通过什么方法来做到这个性能采取呢?
一、CPU利用率
通过命令top -b -n 1 | grep Cpu获取当前CPU的情况;
us 用户空间占用CPU百分比
sy 内核空间占用CPU百分比
ni 用户进程空间内改变过优先级的进程占用CPU百分比
id 空闲CPU百分比
wa 等待输入输出的CPU时间百分比
hi 硬件中断
si 软件中断
而我们常用的CPU利用率这是us代表的值。获取命令为:top -b -n 1|grep Cpu|awk '{print $2}'
二、磁盘I/O等待率
其中我们的磁盘I/O等待率就是Cpu里面对应的wa项。wa 的百分比可以大致的体现出当前的磁盘io请求是否频繁,获取命令为:top -b -n 1|grep Cpu|awk '{print $6}'
三、CPU LOAD
关于cpu load(平均负载),当我们执行命令top -b -n 1 | grep load时,如图load average返回3组数据,分别代表1分钟,5分钟,15分钟CPU的负载情况。
我们日常用来做判断的是1分钟的数据,获取命令为:top -b -n 1|grep load|awk '{print $12}'
四、内存利用率
内存利用率(MEM)的计算方式:used / total。当我们执行命令free -m可以查看当前机器的MEM情况,再获取对应used参数和total参数,进行计算,已获取内存利用率。
执行的命令为:free -m | sed -n '2p'|awk '{print $3/$2*100"%"}'
以上命令均为shell命令,当我们获取到对应的内容之后,把对应的内容拼凑组合,写入对应的文档中,因为后期要制作曲线图,故日常一般写入csv文档中。
这样,只要将对应的shell文件放入对应机器中执行就可以监控到对应数据。
网友评论