Jmeter分布式测试-----远程连接多台电脑


在使用Jmeter进行接口的性能测试时,由于Jmeter 是JAVA应用,对于CPU和内存的消耗比较大,当模拟的并发数高的时候,容易造成JAVA内存溢出,使用远程负载来分担压力


一、Jmeter分布式执行原理:

1、 Jmeter分布式测试时,选择一台为控制机器(Controller),其它机器做为代理机(Agent)
2、执行时,Controller会把脚本发送到每台Agent上,Agent 拿到脚本后开始执行,Agent执行时不需要启动Jmeter,只需要把jmeter-server.bat文件打开即可。  
3、执行后,Agent会把结果回传给Controller,Controller会收集所有Agent的信息并汇总

二、代理机(Agent)配置:

1、Agent机上需要安装JDK、Jmeter,并且配置好环境变量。
2 、Agent找到IP 地址,打开Jmeter/bin/jmeter.properties,找到”remote_hosts=127.0.0.1”,把这一行修改为”remote_hosts=192.168.8.149:1099,1099是端口号,可以随意自定义

jmeter监控win本地资源用量 jmeter监控多台服务器资源_jmeter


4、打开jmeter-server.bat文件,就设置完成了,等待控制机(Controller)启动

三、代理机(Agent)配置:

1、 Controller机上第一步和Agent一样(看上面)
2、Controller找到IP 地址,打开Jmeter/bin/jmeter.properties,找到”remote_hosts=127.0.0.1”,把这一行修改为”remote_hosts=192.168.8.149:1099,192.168.8.174:1099,1099是端口号,可以随意自定义。如果有多台代理机,这里需要把所有的代理机的IP地址和端口号都加入进来

jmeter监控win本地资源用量 jmeter监控多台服务器资源_IP_02


打开jmeter-server.bat文件,设置完成了。

四、前置条件启动

  • 负载机启动jmeter-server.bat文件
  • jmeter监控win本地资源用量 jmeter监控多台服务器资源_端口号_03

  • Controller(控制机)启动 jmeter-server.bat文件
  • jmeter监控win本地资源用量 jmeter监控多台服务器资源_jmeter监控win本地资源用量_04

  • jmeter线程设置如下 设置10个线程 循环1次,一台机器启动10个
  • jmeter监控win本地资源用量 jmeter监控多台服务器资源_jmeter_05

  • 五 验证负载机
  • 只启动负载机,查看结果

一台负载机运行,显示一台机器的结果 10 *1 *1=10

jmeter监控win本地资源用量 jmeter监控多台服务器资源_jmeter_06


jmeter监控win本地资源用量 jmeter监控多台服务器资源_IP_07


jmeter监控win本地资源用量 jmeter监控多台服务器资源_端口号_08


jmeter监控win本地资源用量 jmeter监控多台服务器资源_控制机_09

  • 只启动控制机 显示结果

一台控制器运行,显示一台机器的结果 10 *1 *1=10

jmeter监控win本地资源用量 jmeter监控多台服务器资源_端口号_10


jmeter监控win本地资源用量 jmeter监控多台服务器资源_端口号_11


jmeter监控win本地资源用量 jmeter监控多台服务器资源_端口号_12


jmeter监控win本地资源用量 jmeter监控多台服务器资源_jmeter_13

全部启动,控制机和负载机同时启动,在控制机上显示的是2台机器结果 10*1*2=20

jmeter监控win本地资源用量 jmeter监控多台服务器资源_控制机_14

jmeter监控win本地资源用量 jmeter监控多台服务器资源_控制机_15


jmeter监控win本地资源用量 jmeter监控多台服务器资源_jmeter监控win本地资源用量_16


jmeter监控win本地资源用量 jmeter监控多台服务器资源_jmeter监控win本地资源用量_17