Jmeter分布式性能测试环境的搭建步骤

Jmeter分布式性能测试环境的搭建步骤

  • 由于Jmeter本身的瓶颈,当需要模拟数以千计的并发用户时,使用单台机器模拟所有的并发用户就有些力不从心,甚至还会引起JAVA内存溢出的错误。要解决这个问题,可以使用分布式测试,运行多台机器运行所谓的Agent来分担JMeter自身的压力,并借此来获取更大的并发用户数,但是需要进行相关的一些修改,具体如下。

1、提前搭好Jmeter环境。在apache-jmeter-5.2.1\bin下找到jmeter.properties文件并打开,
修改jmeter.properties文件中 remote_hosts=127.0.0.1 remote_hosts:192.168.100.113,192.168.100.106其中192.168.100.113为controller机器内网IP,一定要改成同一网段的ip,如下:
Jmeter分布式性能测试环境的搭建步骤
2、启动controller机器上的jmeter.bat,选择菜单Run中“Remote Start”中的192.168.100.106来运行Agent。(需要提前启动Agent机器上的JMeter下bin目录jmeter-server.bat)
Jmeter分布式性能测试环境的搭建步骤
3、如果要让某个电脑执行,可以点击该电脑的IP地址就可以,如果两个都要执行,可以点击Run 菜单下的“远程全部启动”菜单。
Jmeter分布式性能测试环境的搭建步骤
4、有时候用作代理的机器太少,仍不能满足需要,则需要将作为Controller的电脑也当作Agent,则同样需要修改 JMeter.properties文件,将Controller的IP地址写入。同时,这个时候,需要打先打开Controller 电脑中JMeter下bin目录下的jmeter-server.bat,然后再打开JMeter.bat,此时,进入Run -> Remote Start菜单,可以看到Controller也作为远程机器进行运行。


常见问题:
1、确保在controller机器上安装的jdk,jmeter版本和Agent机器上的版本一致。

2、Agent机器启动jmeter-server.bat时,后台提示:“could not find ApacheJmeter_core.jar”
解决方法:这个是开始没有找到ApacheJmeter_core.jar,如果不希望看到Could not find的字样,需要添加环境变量JMETER_HOME,路径为bin目录的上一级目录,这样启动jmeter-server服务时,就不会看到could not Found ApacheJMeter_core.jar。

3、Jmeter分布式控制过程中,各个Agent启动的线程数等于线程组中的配置。

4、启动jmeter-server.bat时,报错的解决方法:
Jmeter分布式性能测试环境的搭建步骤
解决步骤:
①找到apache-jmeter-5.2.1\bin\jmeter.properties
②修改server.rmi.ssl.disable=false (记得去除server.rmi.ssl.disable=true前的#),重新启动jmeter-server.bat
Jmeter分布式性能测试环境的搭建步骤
③查看命令窗口显示则启动成功
Jmeter分布式性能测试环境的搭建步骤
5、报:no such object in table
Jmeter分布式性能测试环境的搭建步骤
解决方法:
去掉端口
Jmeter分布式性能测试环境的搭建步骤
6、报系统找不到指定的文件
Jmeter分布式性能测试环境的搭建步骤
解决方案:修改apache-jmeter/bin/jmeter.properties 参数:server.rmi.ssl.disable=true
备注:将controller和agent机器上的jmeter.properties文件 参数server.rmi.ssl.disable均改为true

7、报一下错误
Jmeter分布式性能测试环境的搭建步骤
由于防火墙未关闭或测试controller和agent不在同一个网段会影响远程连接

8、Jmeter远程执行,controller机器显示调用成功,但是agent机器没有返回测试结果解决
解决方案:
①将虚拟适配器禁用:
Jmeter分布式性能测试环境的搭建步骤
②jmeter脚本和测试数据(如果有的话)主机和从机两边都要存放。且controller中jmeter脚本、测试数据的存放路径和agent中jmeter脚本、测试数据的存放路径一致。
③在原因2的基础上,controller的测试数据地址要用绝对路径,agent的测试数据绝对路径或相对路径均可。
④每一个结果都要写上存放的地址,controller和agent的地址要一致
Jmeter分布式性能测试环境的搭建步骤
Jmeter分布式性能测试环境的搭建步骤
Jmeter分布式性能测试环境的搭建步骤

9、正常运行:
Jmeter分布式性能测试环境的搭建步骤
每台机器,跑3000用户
Jmeter分布式性能测试环境的搭建步骤
Jmeter分布式性能测试环境的搭建步骤