JMeter分布式压测配置及实现

应用背景

一台压力机的 Jmeter 默认最大支持 1000 左右的并发用户数(线程数),再大的话,容易造成卡顿、无响应等情况,这是受限于Jmeter 其本身的机制和硬件配置(内存、CPU等);由于 Jmeter 是 Java 应用,对 CPU 和内存的消耗较大,在需要模拟大量并发用户数时,单机很容易出现 JAVA内存溢出的错误,导致测试脚本本身就有瓶颈

JMeter分布压测原理

  1. JMeter分布式测试时,选择其中一台作为控制机(Controller),其它机器做为代理机(Agent)。

  2. 执行时,Controller会把脚本发送到每台Agent上,Agent 拿到脚本后开始执行,Agent执行时不需要启动Jmeter,只需要把jmeter-server.bat文件打开,它应该是通过命令行模式来执行的。

  3. 执行后,Agent会把结果回传给Controller,Controller会收集所有Agent的信息并汇总。

  • 分布式压测原理流程图如下

环境配置及搭建

  • 环境准备:jdk安装,JMeter安装(控制机和代理机jdk和jmeter版本必需保持一致,否则容易有兼容性问题;最好控制机jmeter直接拷贝给agent)

  • 代理机Agent配置

  1. 在agent设备(电脑B)的 JMeter 的bin目录下,找到jmeter.properties文件,编辑该文件,将agent设备(电脑B)的地址写入该文件,如:修改:remote_hosts=172.20.10.4

  2.在该文件修改 server.rmi.ssl.disable=true

  3.在 JMeter 的bin目录下,找到jmeter-sever文件,编辑该文件,将本机(电脑B)得ip地址写入该文件

  4.配置完了启动jmeter-sever.bat

执行后窗口显示为本机ip地址,且无报错信息基本就配置完毕了

如显示接口不是配置文件配置的本机ip,则需要在网络共享中心的更改适配器配置,建议仅保留一个本接口的网络连接,其他网卡都禁用,这样就不会出现控制机连接agent机器时连接到别的网卡ip的情况。

  • 控制机Controller配置

  1. 在控制机(电脑A)的 JMeter 的bin目录下,找到jmeter.properties文件,编辑该文件,将agent设备(电脑B、电脑C)的地址均写入该文件,如:修改:remote_hosts=172.20.10.6,10.182.71.227,172.20.10.4(若想把管理机也当做施压机加上管理机的IP即可)

  2.在该文件修改 server.rmi.ssl.disable=true

  3.在 JMeter 的bin目录下,找到jmeter-sever文件,编辑该文件,将本机控制机(电脑A)得ip地址写入该文件

  • 控制机jmeter调试调用agent设备是否成功

agent设备jmeter文件夹下bin目录下执行文件jmeter-sever.bat文件;

控制机jmeter界面打开,点击运行-远程启动,选中对应得agent设备,点击执行

如下图所示,脚本执行成功,且对应agent设备bat文件执行窗口显示对应得执行开始及结束记录,则控制机调用agent设备成功

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小胖子xpp

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值