Linux环境下分布式压测

一 分布式压测目的及原理
使用分布式压测目的:按照一般施压机配置,jmeter的GUI模式下(Windows),当并发用户数过大时会导致试压机资源消耗过量而卡死。为了模拟业务场景,需要模拟高并发请求,这个时候单台压力机就显得有心无力。针对这个情况,jmeter的解决方案是支持分布式压测,即将大量模拟并发分配给多台施压机,来满足高并发请求场景。

分布式压测原理:压测过程一台做为Master,通过命令行将压测脚本分发给所有 Slave机,Slave机模拟用户向服务器发送请求,执行完成后并把结果传给Master,Master 收集所有 Slave 的结果并汇总成一个结果集。

二 搭建压测环境
1.配置Master环境
1).在Master上配置jdk环境并配置环境变量
验证java环境变量:java -version
在这里插入图片描述
2)在Master上配置jmeter环境并配置环境变量
验证jmeter环境变量:jemter -v
在这里插入图片描述
若提示无权限:
执行命令:chmod +x +路径,即可赋予jmeter权限
在这里插入图片描述
3)进入jmeter中bin目录,修改jmeter.properties,找到关键字remote_hosts,配置负载机ip+端口,remote_hosts=ip1:1099,ip2:1099,…并保存。(jmeter的默认端口是1099,本次压测是4台Slave机器)
在这里插入图片描述
2.配置Slave环境

在每台Slave上配置jdk环境并配置环境变量并验证是否配置成功。
在每台Slave上配置jmeter环境并配置环境变量并验证是否配置成功。
分别进入Slave的jmeter中bin目录,修改jmeter.properties,server.rmi.ssl.disable=true,httpclient.timeout=1000,并保存。
在这里插入图片描述
4)./jmeter-server启动jmeter ;
在这里插入图片描述
三.执行命令及分析压测结果
1.前提:
1)Master上已上传脚本文件和参数化文件;
2)Slave上参数化文件要放在jmeter的bin目录下;
3)Slave 上 启动 ./jmeter-server;
2.在Master上执行分布式压测命令;
1)jmeter -n -t /…/test.jmx -r -l /…/ test.jtl -e -o /…/test (若压测脚本中虚拟用户数设置的是100,分布式环境有4台slave机器,实际对服务器的请求数是100*4=400)
在这里插入图片描述
2)压测完成后下载Master上对应路径中.jtl或者html文件并分析压测结果。
3.稳定性压测(压测时间为48h),一般后台运行脚本
1)Slave上执行 nohup ./jmeter-server &
2)Master上执行 nohup jmeter -n -t /…/test.jmx -r -l /…/test.jtl -e -o /…/test &
3)查看日志:tail -f nohup.out

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值