JMeter分布式压测及常见问题

1. 应用背景

  在性能测试过程中,并发数过大,如果还想用JMeter这个测试工具,那么就应该考虑使用分布式,JMeter是支持分布式压测的。

2. 目的

  • 了解分布式压测基本原理。
  • 熟悉并能使用分布式压测进行压测执行。

3. 介绍

3.1 分布式压测原理

  • 如下是JMeter分布式压测的原理,一个“主机”分别控制多个“肉机”,从而实现增加压力的效果。
  • 在这里插入图片描述

3.2 操作步骤

  注意: 3 台linux测试机需安装相同版本的jdk和jmeter。

3.2.1 设置配置文件

    1、在控制机上修改bin/jmeter.properties,添加从机的IP(查看/etc/hosts)及端口 1099是默认的rmi通信端口并修改自己的绑定端口,如下 :

remote_hosts=192.168.11.196:1099, 192.168.11.197:1099
​
server_port=1099server.rmi.localport=1099server.rmi.ssl.disable=true改为true,代理机和控制机都需要改

2、若修改自身IP,则进行如下操作

vi  bin/jmeter-server:
#增加如下一行
RMI_HOST_DEF=-Djava.rmi.server.hostname=10.120.11.82
#不想在配置文件增加如上代码,可以进行另外一种操作,启动服务端时指定IP
./jmeter-server -Djava.rmi.server.hostname=xx.xx.xx.xx

3、从机修改端口并添加远程主机IP及端口也是在bin/jmeter.properties
若修改自身IP,

vi bin/jmeter-server

4、在控制机执行分布式命令

#-R指定从机IP
jmeter -n -t testplan/comic.jmx -R 10.15.243.53,10.15.230.78 -l testResult/result1.jtl    

​#启动所有从机执行脚本
jmeter -n -t testplan/comic.jmx -r -l testResult/result1.jtl  

5、/jmeter -n -t .xxx_xxx.jmx -R 10.48.194.19 -l a.jtl

参数说明 :
-n :没有GUI模式启动; 
-R:这个后面要跟的是slave机器的地址和端口号,如果有多个的话用逗号隔开;
-t :后面跟的是执行的测试脚本文件的路径,这里需要执行的文件是comic.jmx;
-l :后面跟的是测试结果的存放路径,需要注意的是,这个路径的下面必须是空的,没有文件的才可以操作成功;
-j :后面跟的是测试的日志的存放路径,同样要求是空的,否则会报错;
-e :测试完成生成测试报告
-o:指定测试报告的路径,同样要求是空的,否则会报错
注:若有host同样也需要修改从机的host文件,否则会出现error

4. 操作建议

  • 如果master设置的脚本线程个数是10,启动了5个slave,那么最后的压力应该是10*5=50。
  • 为了减少出错的概率,master和slave上jmeter的版本和jdk的版本需保持一致。
  • 配置hostname,linux上修改/etc/hostname;window上操作,win+r输入drivers回车,找到etc/hosts。
  • 服务端和客户端的内存配置保持相同。(windows调整jmeter.bat;linux调整Jmeter)

5. 常见问题

5.1 不能识别地址

在这里插入图片描述
解决
  直接输入命令行:vim /etc/hostname,修改本机名称。
在这里插入图片描述

5.2 不能识别地址

在这里插入图片描述
解决:
  编辑 jmeter.properties文件,打开#server.rmi.ssl.disable=false,前边的注释,修改内容为true,重启。
在这里插入图片描述

5.3 分布式远程机接口没返回值

  在测试过程中,启动远程机器访问被测系统,查看结果无返回值,具体如下所示:在这里插入图片描述解决:
  编辑 jmeter.properties文件,去掉#mode=Standard,前边的注释,重启解决。
在这里插入图片描述

  • 20
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值