Jmeter_远程启动

  Jmeter 是Java 应用,对于CPU和内存的消耗比较大,因此,当需要模拟数以千计的并发用户时,使用单台机器模拟所有的并发用户就有些力不从心,甚至会引起JAVA内存溢出错误。

  其实,Jmeter的远程启动可以帮助我们解决此问题,通过单个 jmeter 客户端控制多个远程的jmeter服务器,使它们同步的对服务器进行压力测试。

【环境】

  这里,把控制多个机器执行的机器称作Controller,把真正向服务器施加压力的机器成为Agent。

  Controller机器:Win7 + Jmeter3.2 + jdk1.8 ,ip = *.*.*.48 

  Agent机器:Jmeter3.2 + jdk1.8 ,ip = *.*.*.95                      

  注意:

  ①Controller与Agent的Jmeter版本要一致,否则会出现远程调用失败(JRMP)

【配置】

  Controller机器:Jmeter安装路径的bin下,编辑jmeter.properties文件,追加如下内容:

    # Jmeter远程启动:Controller机配置,格式为:“IP1:port1,IP2:port2”,如下只配置了一台Agent;

    remote_hosts=*.*.*.95:1029    

  Agent机器:Jmeter安装路径的bin下,编辑jmeter.properties文件,追加如下内容:

    # Jmeter远程启动:Agent机配置

    server_port=1029

    server.rmi.localport=1029

  备注:若出现端口被占用,Windows上在dos框输入“netstat -ano”,查看端口使用情况,这里推荐使用新的端口;

【脚本文件】

  ①需要在每台Agent上复制一份脚本文件及相关的文件,且路径要一致;否则会出现在测试一闪而过,“查看结果树”中无任何请求;

  ②参数文件:Controller机器的参数文件配置元件CSV Data Set Config中,FileName要给绝对路径;Agent机器相对路径绝对路径均可;

【启动】

  ①Controller机器:“运行”→“远程启动”,可以看到我们配置的Agent机器的IP及端口,如下所示,选择这台机器;

   

  ②Agent机器:

  Jmeter安装在Windows平台上:cmd到dos中,进入Jmeter安装路径的bin目录下,执行“jmeter-server”

  Jmeter安装在Linux平台上:进入Jmeter安装路径的bin目录下,执行“./jmeter-server”;

  否则会报如下错误:“Java.net.ConnectionException: Connection refused:connect”

   

  ③Controller机器:点击“启动”按钮即可执行,此时可在Agent的机器上看到执行的情况(Windows);

  至此,远程启动执行完毕。

原文地址:https://www.cnblogs.com/xpp142857/p/7019805.html