对于Jmeter,可以不再赘述,因为介绍得也够多了。
那么相信有部分同学已经尝试着自主去学习如果使用Jmeter对服务器进行压力测试了。
但是可能也会发现,Jmeter好像监控不了服务器的cpu已经内存等等呀。其实不然,Jmeter提供了非常非常多的插件。
插件已经帮你们准备好,获取路径:
JMeterPlugins-Extras-1.4.0.zip
JMeterPlugins-Standard-1.4.0.zip
ServerAgent-2.2.3.zip
其中Extras和Standard是Jmeter插件,ServerAgent是服务器监控插件。
一、导入Jmeter插件
解压JMeterPlugins-Standard-1.4.0.zip,将其中\lib\ext\JMeterPlugins-Standard.jar包复制到jmeter安装目录下的\lib\ext下
解压JMeterPlugins-Extras-1.4.0.zip,将其中\lib\ext\JMeterPlugins-Extras.jar包复制到jmeter安装目录下的\lib\ext下
二、将ServerAgent放入服务器中并解压
(ps:此插件可以兼容Windows和Linux,在Windows下解压,双击startAgent.bat打开即可)
(ps:Linux解压命令为unzip ServerAgent-2.2.3.zip )
(ps:如果遇到 Permission denied,请切换root用户或者赋权)
三、启动ServerAgent
1.进入解压后的目录
2.执行命令:./startAgent.sh
ps:启动后,会停留在启动页面,看到提示started则启动成功,就可以放在那不用管了。
四、设计测试脚本(以注册为例)
1.对手机号进行随机函数参数化
2.线程组设置压力
3.添加监听器jp@gc - PerfMon Metrics Collector
五、设置监控资源
ps:给大家介绍一些常用的组件
jp@gc - Bytes Throughput Over Time:不同时间吞吐量展示(图表)。聚合报告里,Throughput是按请求个数来展示的,比如说1.9/sec,就是每s发送1.9个请求;而这里的展示是按字节Bytes来展示的图表
jp@gc - Composite Graph: 混合图表,在它的Graphs里面可以设置多少个图表一起展示,它可以同时展示多个图表
jp@gc - Hits per Second:每秒点击量
jp@gc - PerfMon Metrics Collector:服务器性能监测控件,包括CPU,Memory,Network,I/O等等
jp@gc - Reponse Latencies Over Time:记录客户端发送请求完成后,服务器端返回请求之前这段时间
jp@gc - Reponse Times Distribution: 显示测试的响应时间分布,X轴显示由时间间隔分组的响应时间,Y轴包含每个区间的样本数
jp@gc - Transactions per Second: 每秒事务数,服务器每秒处理的事务数
六、执行测试,查看监控结果
ps:当执行完成后,服务器上可以看到监控资源请求,提示Client disconnected表示监控资源结束
到此,已正常完成服务器的cpu,内存等监控。
然后可以结合聚合报告,一起分析去分析服务器的性能拉!!
写在最后,如果执行监控遇到报错信息:
java.lang.NoSuchMethodError: org.apache.jmeter.samplers.SampleSaveConfiguration.setFormatter
请更换低版本Jmeter。
亲测
1.4.0版本的Extras和Standard
2.2.3版本的ServerAgent
兼容3.2版本