需要对http服务进行大数据量的传值测试;看看产品中的http服务,能支持传多少字符;目标值是希望能到10w+;
上次测试中,服务器总是内存满导致服务不响应,因此想增加对服务端的性能监控;查阅了smile_花儿的博客(谢谢大佬),看到了jmeter之图形监控扩展,一方面自己做个记录,过程中遇到的问题以及查阅资料过程中看到的问题也记录下来,供以后参考;
版本:自用的版本是apache-jmeter-5.2.1 ,发现不兼容后,修改为3.1版本;下载地址见最后一行;
1. 插件扩展,插件下载地址(https://jmeter-plugins.org/downloads/old/),下载了JMeterPlugins-Standard-1.4.0.zip,这个是jmeter的扩展插件,如果想要监听服务器的cpu、io等情况,则还需要ServerAgent。
2. 下载ServerAgent-2.2.1.zip,百度直接查就好,很多大佬们都直接百度网盘分享出来了;这个压缩包直接放到服务器上去,注意,不是本机,是服务器上;
3.下载下来的JMeterPlugins-Standard-1.4.0.zip包,解压缩后,找到JMeterPlugins-Standard.jar文件,拷贝到apache-jmeter-5.2.1 libext目录下;jmeter重启后,打开GUI界面,看到jp@gc开头的内容,就是ok了;
4. 接下来是ServerAgent-2.2.1.zip,解压后,将整个文件夹拷贝到服务器端,然后windows服务点击startAgent.bat启动服务,linux下运行startAgent.sh启动服务;这里默认的端口是4444(在jmeter中会用到);常见的错误问题主要集中在端口占用,被封这方面;
5. 监听的系统资源,包括cpu、内存、IO等,在jmeter的监听器中,添加jp@gc-PertMon Metrics Collector即可;红色框中是常用的几个监听的内容;
6.在监听器中增加jp@gc-PertMon Metrics Collector之后,需要进行配置;前提是第4点已经完成;这里配置的时候,port的接口是与服务端的接口对应的;
7. 相关的监控内容添加完成后,就可以进行测试了;
服务器启动ServerAgent的服务,经常遇到的问题;闪退,检查端口是否被占用,未占用,是否由于安全原因,其他端口被封禁导致;
a.检查ServerAgent有没有在服务器上正常启用
b.服务端的防火墙是否关闭
c.默认端口是否被占用
如果确定是端口被占用,在statAgent目录下运行 java -jar ./CMDRunner.jar --tool PerfMonAgent --udp-port 7777 --tcp-port 7777 更改默认端口。-----个人未验证,参考http://www.bubuko.com/infodetail-3523159.html
8. jmeter执行过程中,发现察看结果树无数据,也不执行,第4点也正常,但是jmeter就一直报错,请求也发布出去了,查阅之后,发现是由于jmeter版本过高,换成了3.1版本,就正常了;
提供一个jmeter下载地址:(https://archive.apache.org/dist/jmeter/binaries/)大家可以自己去下载哈;