由于一台电脑的资源有限,无法满足更高的测试要求,这时就需要分布式压测了。
一、分布式原理
1、一台电脑作为控制机(master),其他电脑作为执行机(slave)。
2、执行时,控制机会把脚本发送到每台执行机上,执行机拿到脚本后就开始执行。
3、执行机执行时不需要启动Jmeter界面,以命令行模式运行。
4、运行完成后,执行机会把结果回传给控制机,控制机收集所有执行机的信息并统计汇总。
二、执行机(slave)配置
1、安装Jmeter,最好和控制机(master)同一版本,并确保Jmeter能正常启动。
2、添加环境变量JMETER_HOME
3、打开bin目录下的jmeter.properties文件,找到remote_hosts,修改为实际IP+端口号,端口号可以随便定义,只要没有被占用就行。
4、修改server.rmi.ssl.disable=true
5、在bin目录下双击jmeter-server.bat
三、控制机(master)配置
1、开bin目录下的jmeter.properties文件,找到remote_hosts,添加执行机(salve)的IP和端口号,有几台执行机就添加几个IP和端口,以逗号(,)分隔。
2、验证远程执行脚本
四、异常处理
1、执行机(salve)启动jmeter-server.bat时报Could not find ApacheJmeter_core.jar错误,如下图:
解决方案:添加环境变量JMETER_HOME
2、执行机(salve)启动jmeter-server.bat时报 java.io.FileNotFoundException: rmi_keystore.jks (系统找不到指定的文件。)错误,如下图:
解决方案:修改server.rmi.ssl.disable=true