jmeter分布式压测配置(Windows)
分布式压测分为两块: 控制器(controller)和代理(agent)
- controller 负责把脚本分发给 agent执行。
- agent 负责执行脚本,产生对服务器的实际压力,agent 运行 non GUI model,点击 jmeter-server.bat 即可。agent 执行脚本后,把压测的结果发送给 controller。
- controller 作为控制器不加入实际测试,只负责发送和收集 agent 信息。
一、配置 agent
-
1. 我的jmeter版本是 apache-jmeter-5.0,在 agent 机器上需要修改配置 jmeter.properties,修改以下两处配置:
-
1)找到 server_port 去掉 #,设置端口 。
-
2)找到server.rmi.ssl.disable=false 改成 true
-
![]()
2. 在agent机上双击 jmeter-server.bat ,这个 ip 有用,待会要配到 controller 机器上的配置文件里(若报错'jmeter' is not recognized,需要配置 jmeter 环境变量)
![]()
没有配置jmeter环境变量,系统报错信息
-
![]()
-
3.jmeter配置环境变量
- 1)在系统变量框,点击“新建”,建立一个变量:JMETER_HOME,值为你解压的jmeter安装路径
- 2)配置classpath变量,没有的话也要按照上面步骤进行新建,有的话直接进行选中,点击编辑即可。变量值固定为:
- %JMETER_HOME%\lib\ext\ApacheJMeter_core.jar; %JMETER_HOME%\lib\jorphan.jar;
- 3)在用系统变量path后面加上%JMETER_HOME%\bin
-
二、配置 controller
1. 打开 controller 的配置文件 jmeter.properties 找到 remote_hosts ,把刚才第二个步骤的 ip 配进去
![]()
2. 打开 controller 的配置文件 jmeter.properties ,找到 server.rmi.ssl.disable=false 改成 true (此处 controller 也需要修改,不然会报错 )
-
![]()
- 3. 在controller 双击 jmeter.bat ,运行一个 agent
-
-
![]()
-
问题处理:
- 1、控制机远程启动执行机后,无响应也不报错,同时也不返回结果。
- 分析:通过查看执行机上的jmeter-server.log文件
-
java.rmi.ConnectException: Connection refused to host: 2.0.0.1; nested exception is:
java.net.ConnectException: Connection timed out: connect - 处理方法:
- 在控制机上编辑jmeter.bat文件,按照如下图所示修改,其中set rmi_host=-Djava.rmi.server.hostname=控制机的ip
-
![]()
-
如果修改后还是不行,需检查防火墙是否关闭,需关闭防火墙
更多问题处理详见:https://blog.csdn.net/ningmengban/article/details/144699493?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-1-144699493-blog-119932248.235^v43^pc_blog_bottom_relevance_base5&spm=1001.2101.3001.4242.2&utm_relevant_index=3








浙公网安备 33010602011771号