08-08 性能测试--分布式

参考链接:

https://testerhome.com/articl...

分布式的原因

针对测试:单机无法支持过大并发量,需要多机器同时执行并发来解决

分布式的原理

主机 master 执行与分发脚本给 从机,汇总 从机 的执行结果

从机 salve 执行 主机 分发的脚本,并把数据反馈给主机

08-08 性能测试--分布式_第1张图片

分布式实现

1 配置主机 master

修改配置文件

  • jmeter.properties

在 jmeter.properties 文件中新增 remote_hosts 配置;

配置是 slave 主机的 ip 和 slave 主机里安装的 jmeter 的端口号

修改并删除注释:server.rmi.ssl.disable=true 关闭SSL,保证远程连接通畅

#---------------------------------------------------------------------------
# Remote hosts and RMI configuration
#---------------------------------------------------------------------------

# Remote Hosts - comma delimited
remote_hosts=127.0.0.1  # 填写从机的 ip:prot(可以不写,默认1098),多个从机以","分割
#remote_hosts=localhost:1099,localhost:2010

server.rmi.ssl.disable=true  # 关闭SSL,保证远程连接通畅
  • jmeter.bat(Windows平台) / jmeter(Linux/Mac平台)

在 jmeter.bat 文件中新增新增 set rmi_host=-Djava.rmi.server.hostname=本机 ip

2 配置从机 salve

从机必须提前安装好 JMeter,并配置环境变量

修改配置文件

  • jmeter.properties

修改 slave 主机的 ip:remote_hosts={slave IP}

修改并删除注释:server.rmi.ssl.disable=true 关闭SSL,保证远程连接通畅\
开放三个默认端口

server_port = 1098

server.rmi.port=1098

server.rmi.localport = 1098
  • system.properties

增加一行:java.rmi.server.hostname={slave IP}

  • 配置 jmeter-server(与 system.properties 的配置二选一)

添加一行:RMI_HOST_DEF=-Djava.rmi.server.hostname={slave IP}

3 远程机器启动

启动命令:.jmeter-server

通过指定 IP 启动:

./jmeter-server -Djava.rmi.server.hostname={slave IP}

4 主机操作

08-08 性能测试--分布式_第2张图片

可同时启动主机 master,能起到叠加效果,但是主机与远程机器启动有时间差

非 GUI 运行:

jmeter -R slave_ip:port(默认1098)

你可能感兴趣的