Jmeter java请求性能测试步骤和结果
- 一、去官网http://jmeter.apache.org/下载JMeter
- 二、解压文件,将打包好的jar包放在apache-jmeter-3.2/lib/ext下
运行apache-jmeter-3.2/bin/jmeter文件 (windows运行jmeter.bat文件) - 三、配置参数进行压力测试
1、右键添加线程组。配置线程数,循环次数,调度器等
2、右键添加Sampler-Java请求。选择jar包中定义的class(上一篇写了下java测试代码)
3、添加需要监听生成的相关报告。常用的如图形结果,察看树结果,聚合报告等
Jmeter的监听器如果不能满足需求,可以安装需要的插件 https://jmeter-plugins.org/wiki/Start/ 下载插件 如:Response Times Over Time ,Transactions per Second 解压后放到jmeter的安装目录的相同位置,如: 下载下来的包在lib目录下的就放到apache-jmeter-3.2\lib下, ext下的就放到apache-jmeter-3.2\lib\ext\ 下。
- 四、远程服务器压测
由于本地机器网络和性能原因,压测往往需要在服务器上进行,Jmeter配置远程服务器也比较简单,要求服务器的jdk版本在1.8.0以上。
- 本地安装好Jmeter后,在服务器上安装同样版本的Jmeter(不同版本会出现问题)。
- 本地和服务器可以相互ping一下,以防出现连接问题。
- 将打包好的jar包放在服务器的apache-jmeter-3.2/lib/ext下。
- 在服务器上运行apache-jmeter-3.2/bin/jmeter-server。
命令为./jmeter-server -Djava.rmi.server.hostname=服务器IP 在本地更改配置文件apache-jmeter-3.2/bin/jmeter.properties
remote_hosts=127.0.0.1改为remote_hosts=服务器IP:1099(默认端口1099。Jmeter采用了RMI port… )本地Jmeter参数等配置完成后,点击运行-远程运行-选定远程服务器即可启动。
JMeter客户端会自动向JMeter远程服务器上分发测试计划,可以在远程服务器查看执行情况,执行完成后在本地客户端查看具体执行结果
远程压测可以是单台机器也可以是多台机器,经使用发现,在使用单台服务器进行压力测试时,使用Jmeter的UI界面进行操作可以正常使用,但是两台及以上服务器压测时,压测数据结果异常,网上查了下,是由于RMI协议导致的,数据传输有问题。所以之后的压测开始使用非UI命令操作,生成utl结果,再用UI展示。
- 五、某次的压测结果如下所示
某次配置如下所示
压测结果响应时间如下:
qps变化曲线如下:
聚合报告如下: