美文网首页
Jmeter 分布式测试

Jmeter 分布式测试

作者: 驕傲的兎孒 | 来源:发表于2018-10-26 15:44 被阅读0次

Jmeter分布式执行原理:

1、Jmeter分布式测试时,选择其中一台作为调度机(master/Controller),其它机器做为执行机(slave/Agent)。

2、执行时,master会把脚本发送到每台slave上,slave 拿到脚本后就开始执行,slave执行时不需要启动GUI,应该是通过non-gui命令行模式执行的。

3、执行完成后,slave会把结果回传给master,master会收集所有slave的信息并汇总。

注意:

(1)每一台jmeter远程服务器(slave机器)都执行相同的测试计划,jmeter不会在执行期间做负载均衡,每一台服务器都会完整地运行测试计划,所以根据木桶原理,性能最差的slave可能会影响测试;

(2)采用JMeter远程模式并不会比独立运行相同数目的非GUI 测试更耗费资源。但是,如果使用大量的JMeter 远程服务器,可能会导致客户端过载,或者网络连接发生拥塞;

(3)默认情况下,master机器是不执行参与生成并发数据的;

(4)调度机(master)和执行机(slave)最好分开,由于master需要发送信息给slave并且会接收slave回传回来的测试数据,所以master自身会有消耗,所以建议单独用一台机器作为master。

说明:

1.Jmeter分布式测试时,选择其中一台作为客户端(controller),其它机器做为服务端(slave)。

2.执行时,controller会把脚本发送到每台slave上,slave 拿到脚本后就开始执行,slave执行时不需要启动GUI,我理解它应该是通过命令行模式执行的。slave本地不需预先存储脚本;

3.执行完成后,slave会把结果回传给controller,controller会收集所有slave的信息并汇总。

配置slave

在配置安装完 Java 和 Jmeter 后,我们要配置两个地方,slave 的IP和端口。

分别在s1、s2、s3(slave机器)上,进入%JMETER HOME%/bin/目录,

打开“jmeter.properties”,配置执行机远程启动端口(默认为 1099),

如改为:

server_port=1099

server.rmi.localport=1099

打开“jmeter-server”,配置执行机远程启动IP

如改为:

DIRNAME=dirname $0

RMI_HOST_DEF=-Djava.rmi.server.hostname=10.31.121.115

启动slave server:

配置Controller

在配置安装完 Java 和 Jmeter 后,进入%JMETER HOME%/bin/目录,

编辑 jmeter.properties 这个文件,修改添加:

remote_hosts=172.16.129.155:1099,172.16.129.43:1099

(slave的IP)

server_port=1099

client.rmi.localport=0

server.rmi.port=1234

server.rmi.localport=1099

进入%JMETER HOME%/bin/目录,编辑 jmeter.bat这个文件,修改添加:

set rmi_host=-Djava.rmi.server.hostname=本机ip(控制器ip)

Set ARGS=%DUMP% %HEAP% %NEW% %SURVIVOR% %TENURING% %PERM% %DDRAW% %rmi_host%

相关文章

网友评论

      本文标题:Jmeter 分布式测试

      本文链接:https://www.haomeiwen.com/subject/enxltqtx.html