目录
前言
- 在使用Jmeter进行性能测试时,如果并发数比较大,单台主机的配置(CPU和内存)可能无法支持,这时可以使用Jmeter提供的分布式测试的功能。
- 原理:Jmeter分布式测试时,本地jmeter作为控制机(master),其它机器做为执行机(slave)。执行时,master会把脚本发送到每台slave上,slave 拿到脚本后就开始执行。执行完成后,slave会把结果回传给master,master会收集所有slave的信息并汇总。
控制机(master)配置
- 打开apache-jmeter\bin目录里的jmeter.properties文件
- 修改remote_hosts配置,配置的是两台slave主机的ip和slave主机里安装的jmeter的端口号

执行机(slave)配置
- 打开apache-jmeter\bin目录
- 修改jmeter.properties文件,修改remote_hosts(ip是这台slave主机的ip)和server_port(默认1099,这里修改为1098),配置需与master的jmeter.properties文件保持一致

- 修改server.rmi.localport值与上面的server_port保持一致
- server.rmi.ssl.disable = true 关闭ssl验证

- 修改 jmeter.save.saveservice.response_data=true和 jmeter.save.saveservice.samplerData=true 防止响应数据为中文时,显示乱码
- 修改jmeter-server文件:RMI_HOST_DEF=-Djava.rmi.server.hostname=这台slave主机的ip

执行测试
- 启动slave:双击jmeter-server

- 启动master:可以选择单个slave执行,也可以选择执行所有

说明
- master和slave jdk和jmeter版本要保持一致
- windows系统最好关闭防火墙
- 测试前ping一下IP,看下是否ping通
本文详细介绍了如何配置和执行JMeter的分布式测试,包括控制机和执行机的设置,以及测试过程。分布式测试适用于高并发场景,通过一台主机作为控制机发送脚本到多台执行机,收集并汇总测试结果。确保JDK和JMeter版本一致,关闭防火墙,并在测试前检查网络连通性,以确保测试顺利进行。
2444

被折叠的 条评论
为什么被折叠?



