用Jmeter分布式测试——多台电脑做压力测试

 在使用Jmeter进行接口的性能测试时,由于Jmeter 是JAVA应用,对于CPU和内存的消耗比较大,所以,当需要模拟数以万计的并发用户时,使用单台机器模拟所有的并发用户就有些力不从心,甚至会引起JAVA内存溢出错误。为了让jmeter工具提供更大的负载能力,这时可以使用Jmeter提供的分布式功能来启动多台电脑来分压测试。

一、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、打开“运行”,输入"cmd",打开运行面板,输入“ipconfig”,找到IP地址,例如是:192.168.100.207

 3-打开Jmeter/bin/jmeter.properties,找到”remote_hosts=127.0.0.1”,把这一行修改为”remote_hosts=192.168.100.207:1099,1099是端口号,可以随意自定义。

 

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

三、控制机(Controller)配置:

1、Controller机上需要安装JDK、Jmeter,并且配置好环境变量。

2、打开“运行”,输入"cmd",打开运行面板,输入“ipconfig”,找到IP地址,例如是:192.168.100.190:1099

 -打开Jmeter/bin/jmeter.properties,找到”remote_hosts=127.0.0.1”,把这一行修改为”remote_hosts=remote_hosts=192.168.100.190:1099,192.168.100.207:1099,1099是端口号,可以随意自定义。如果有多台代理机,这里需要把所有的代理机的IP地址和端口号都加入进来。

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

四、开始添加线程组和请求来运行查看结果:

1、打开jmeter.bat文件,添加线程组,编辑线程数,这里设置1个线程数,循环1次,就是一台机器发送1*1=1个请求。两台机器就会有2个请求

 

 tips:

如果遇到Jmeter执行jmeter_server.bat报错java.io.FileNotFoundException:rmi_keystore.jks(系统找不到指定的文件)

 

1.bin目录下有一个create-rmi-keystore.bat执行这个按提示生成密钥。

会在bin目录下生成一个rmi_keystore.jks文件。

2.修改jmeter.properties文件下server.rmi.ssl.disable=true (记得去除server.rmi.ssl.disable=true前的#)

这行说明什么呢,就是让我们决定是不是要启动SSL

3. 执行jmeter_server.bat 

 

 

端口号与设置的不同,需要端口设置:

jmeter.properties设置本机ip:端口

找到jmeter.properties文件,修改如下两个配置项,比如我这里修改为1888:
  server_port=1099
  server.rmi.localport=1099

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值