今天突然研究了分布式,和同事一起配合下完成了,记录一下。
一、首先两台机器是可以互相ping通的
二、配置slave机
2.1获取slave机的本地IP,本地IP为192.168.7.67。然后打开slave机上Jmeter/bin/jmeter.properties文件
设置如下,如果被注释了就去掉注释:
server.rmi.localport=1099
server_port=1099
remote_hosts=192.168.7.67:1099
2.2打开slave机上的jmeter-server.bat文件,检查显示的端口是否和上面修改的一致。不要关闭该窗口,等待master机启动调用。
三、配置master机
3.1获取获取master机的本地IP,本地IP为192.168.7.35。然后打开master机上Jmeter/bin/jmeter.properties文件。
设置如下,如果被注释了就去掉注释:
remote_hosts=192.168.7.35:1099,192.168.7.67:1099
注:这里将本机也可以做执行机。多个slave的地址用,分隔
server_port=1099
server.rmi.localport=1099
3.2打开master机的jmeter-server.bat文件,。不要关闭该窗口
四、执行
4.1使用jmeter执行,可以看到有两个可以启动的slave机
4.2 非GUI模式启动
打开jmeter的bin目录下启动命令窗口
命令如下:jmeter -n -t C:UserszynDesktopworkinterfacefbs.jmx -R 192.168.7.35:1099,192.168.7.67:1099 -l fenbushi.jtl -j fbs.log
-n:非GUI模式
-R:选择执行的slave机
-r:启动全部的slave机
如下图,两种都可以进行启动
五、遇到的问题
5.1 成功启动slave机,但是master机查看结果数,没有响应数据,如图
解决办法:打开master机jmeter.properties文件,找到mode=Standard,去掉前面的#,重新启动jmeter即可。
5.2使用了CSV Data Set Config,不能启动slave机,也没有什么报错
解决:原来参数文件在每台slave上都要拷一份且路径需要设置成一样才可以使用,那么就把参数文件放在master和slave机的jmeter/bin目录下,就可以正常启动了。