1、环境部署:
Jmeter在主机控制器上添加配置,打开bin/目录下的 jmeter.properties 文件
#如果本机也是压测机器,把本机IP加上,不是127.0.0.1
remote_hosts=192.168.1.6,192.168.1.8
server_port=1099
Set this if you don't want to use SSL for RMI
server.rmi.ssl.disable=true
2、编辑从机节点的 jmeter.properties 文件(两个从机节点都需要配置)
RMI port to be used by the server (must start rmiregistry with same port)
server_port=1099
Set this if you don't want to use SSL for RMI
server.rmi.ssl.disable=true
the following property before starting the server:
server.rmi.localport=1001
3、压力从机启动jmeter-server(Windows为例)
压力机的jmeter-server(192.168.1.6)
本机192.168.1.8启动jmeter-server
注:Linux的jmeter-server启动
注意:
1.如果你的Controller节点参与了请求,此时jmeter-server也需要启动;
2.执行的脚本进行文件参数化,此时需要存放在jmeter-server启动的相对位置路径,而不是你脚本存储的相对路径,首先执行的时候,Controller节点会对脚本下发,他会下发到jmeter-server启动的路径,而不是你脚本存放的路径
4、压机主机启动远程,分布式远程
5、非GUI启动远程机器
• 启动指定Slave节点
启动命令:jmeter -n -t api.jmx -R 192.168.124.129
• 启动所有Slave节点(添加参数-r)
启动命令: jmeter -n -t api.jmx -r
6、验证JMeter分布式是否有效
线程组设置:方便验证,线程数10,循环1次
6.1)验证本机:192.168.1.8,线程数10,循环1次,聚合报告运行结果10
6.2)验证远程机:192.168.1.6,线程数10,循环1次,聚合报告运行结果10
6.2)验证本机和远程机:192.168.1.6,192.168.1.8,线程数10,循环1次,聚合报告运行结果20
注:如果并发数比较大,可以修改JMeter内存配置
JMeter/bin目录,编辑jmeter.bat文件
bash
set HEAP=-Xms512m -Xmx512m -XX:MaxMetaspaceSize=256m
xms:代表初始内存
xmx:最大内存
校验是否成功,JDK的jconsole的工具查看
,
+选择VM概要
+查看VM参数
常见问题FAQ
执行 sh jmeter-server报错:
原因为:
Jmeter远程启动该服务器报错:no such object in table
原因:
remote_hosts=192.168.124.129,192.168.124.130 (去掉端口即可,因为远程机的server.rmi.localport=1001 注释打开了,会默认取这里的端口)