jmeter 工具是一个java应用,耗费机器性能比较厉害,我的跑50并发用户就会崩溃掉,所以jmeter提供一种方式,在所有安装jmeter的机器上以一台机器为核心,其他机器为分担机的实现方式来实现更多并发的压力测试。
1. 配置分布式
进入jmeter控制机的jmeter_home/bin目录下,修改jmeter.properties文件的remote_hosts字段,比如192.168.0.2和192.168.0.3做为分单机就是这个样的remote_hosts=192.168.0.1,192.168.0.3,多个ip是以逗号分隔的注意是半角,配置完成。
接下来在各分担机上bin目录下启动jmeter-server.bat,在控制机上运行jmeter.bat 打开界面,点击运行--远程全部启动,这时候分担机的两台就可以运行测试了,注意控制机自身没有运行脚本,所以如果想让控制机自身也运行测试,那么需要把控制机也配置上,remote_hosts=192.168.0.1,192.168.0.3,127.0.0.1 ,然后再运行控制机的jmeter-server.bat,再次运行jmeter.bat打开界面,执行远程全部启动,此时控制机与分担机都会运行测试。
2. 需要注意的一些地方
- 控制机与分担机上的jmeter版本和jdk版本要一致
- 如果测试计划有参数化文件或者其他文件,所有的分担机都要在相同的位置,并且测试计划中都得使用绝对路径而不能使用相对路径
- 所有分担机的测试环境host要保持一致
- 控制机如果没有承担分担机角色,自身不会执行测试计划
- 分布测试的线程总数是测试计划里设置的线程数*分担机个数,也就是说测试计划设置里10个线程,共有3台分担机的话,线程实质是3*10=30