利用JMeter进行负载测试的时候,使用单台机器模拟测试超过1000个行程的并发就有些力不从心,在执行的过程中,JMeter自身会自动关闭,要解决这个问题,可以使用分布式测试,运行多台机器运行所谓的 Agent 来分担 JMeter自身的压力,并借此来获取更大的并发用户数,但是需要进行相关的一些修改,具体如下:
1、在所有期望运行 JMeter 作为 Load Generator 的机器上安装 JMeter,并确定其中一台机器作为 Controller,其他的机器作为 Agent。然后运行所有 Agent 机器上的JMeter-server.bat文件——假定我们使用两台机器 192.168.0.1 和 192.168.0.2 作为 Agent;
2、在Controller 机器的 JMeter 安装目录下找到 bin 目录,再找到 JMeter.properties 这个文件,使用记事本或者其他文字编辑工具打开它;
3、在打开的文件中查找“remote_hosts=”这个字符串,你可以找到这样一行“remote_hosts=127.0.0.1”。其中的 127.0..0.1 表示运行 JMeter Agent 的机器,这里需要修改为“remote_hosts=192.168.0.1:1099,192.168.0.2:1099”——其中的 1099 为 JMeter 的 Controller 和 Agent 之间进行通讯的默认 RMI 端口号,端口号在运行Agent上面的jmeter-server.bat时,会显示出来,注意:有些高版本的JMeter不需要写port,remote_hosts=192.168.0.1就可以了;
4、保存文件,并重新启动 Controller 机器上的 JMeter.bat,并进入 Run -> Remote Start 菜单项,在这里可以看到远程启动菜单下面有192.168.0.1 ,192.168.0.1两个IP地址
5、如果要让某个电脑执行,可以点击改电脑的IP地址就可以,如果两个都要执行,可以点击Run 菜单下的“远程运行全部”菜单
6、有时候用作代理的机器太少,仍不能满足需要,则需要将作为Controller的电脑也当作Agent,则同样需要修改 JMeter.properties文件,将Controller的IP地址写入。同时,这个时候,需要打先打开Controller 电脑中JMeter下bin目录下的jmeter-server.bat,然后再打开JMeter.bat,此时,进入Run -> Remote Start菜单,可以看到Controller也作为远程机器进行运行。
在连接时报:connection refused to host:10.10.90.69 nested exception is...错误,后来发现是启动JMeter-server.bat时就报错了,分析原因是jmeter安装文件放到桌面上有中文字符引起的。
jmeter的坑(1)——如何在多网卡情况下正确连接
性能测试时,使用的服务器配置了双网卡,windows客户机配置了四网卡,坑爹的配置,内外网的隔离,导致在使用jmeter进行分布式测试的时候总是连接失败。
原因分析:
Jmeter采用了rmi进行远程调用,在开启RMI服务时,如果服务端有多个网卡,它只是使用其中任意一个网卡,默认情况下,导致jmeter的controller机器和agent机器不在同一个网段内,无法互通,导致失败
解决方法:
我们要在多网卡的服务器上开启RMI服务的话必须指定IP,使他们能够在同一个网段内。
需要以下几步(假定所有机器都在10.120.11.*网段,agent服务器为linux,controller服务器为windows):
1、 修改agent服务器,指定agent机器的IP
修改jmeter-server文件
# vi jmeter-server
修改RMI_HOST_DEF=-Djava.rmi.server.hostname=10.120.11.82
2、 修改server服务器,指定server机器的IP
修改jmeter.bat文件
新增set rmi_host=-Djava.rmi.server.hostname=10.120.11.214
修改set ARGS=%DUMP% %HEAP% %NEW% %SURVIVOR% %TENURING% %PERM% %DDRAW% %rmi_host%
修改完成后,重新启动即可
相关推荐
本文将深入探讨JMeter的使用方法、重要功能以及如何进行超细粒度的压力测试报告分析。 首先,JMeter是一款由Apache软件基金会开发的负载和性能测试工具,适用于Web应用、FTP服务器、数据库和其他协议的服务。它支持...
在"JMeter性能测试-day01-all"中,初学者可能接触到的是基础概念和环境搭建,包括安装JMeter、理解JMeter的工作原理、配置JMeter的运行环境,以及创建简单的测试计划。测试计划是JMeter的核心,它定义了如何对目标...
针对武汉天然气蓝牙卡圈存小程序,进行压力测试,模拟并发圈存上表,测试其在多用户同时使用的场景下,系统响应速度、吞吐量及资源消耗等性能指标。 1.2 测试目标 - 最大负荷验证:在50人和100人并发下,检查小程序...
### JMeter多接口测试性能测试知识点详解 #### 一、接口业务流程 ##### 1. 获取 token 接口 - **URL**: `http://192.168.1.4:9900/rest/getToken/` - **功能**: 通过此接口获取系统中的token,用于后续接口的身份...
配置分布式测试需要在各节点上设置相同的JMeter配置,并通过JMeter服务器进行控制。 总结,JMeter是一款强大的性能测试工具,通过创建和执行测试计划,我们可以评估Web应用的性能和稳定性。理解并熟练掌握JMeter的...
在测试机器配置低情况下,如何通过分布式部署jmeter在一个分布式局域网环境?本文档告诉你如何做。
在"test"任务中,定义了一个名为"jmeter"的任务,该任务用于执行jmeter测试脚本。该任务调用了jmeter的jmx文件,执行测试脚本,并将测试结果保存到jtl文件中。 在"report"任务中,定义了一个名为"xslt"的任务,该...
1. **测试计划(Test Plan)**:测试计划是JMeter测试的起点,它是其他测试元件的容器,整个测试脚本和配置都在这个层次下组织。 2. **线程组(Thread Group)**:线程组模拟并发用户,可以设置线程数、启动速率...
《JMeter MQTT服务器压力测试详解》 在信息技术领域,性能测试是确保系统稳定性和...通过深入理解MQTT协议、JMeter工具和定制化的加密方法,我们可以设计出更贴近实际场景的测试计划,以提高系统的健壮性和用户体验。
【Jmeter性能测试报告概述】 性能测试是评估软件系统在不同负载条件下运行能力的重要手段,旨在确定系统的性能指标,如响应时间、并发用户数、系统稳定性等。JMeter是一款广泛使用的开源性能测试工具,适用于模拟...
《JMeter多接口测试性能测试详解》 JMeter是一款强大的性能测试工具,尤其在多接口测试方面,它能提供详尽的数据分析和测试方案。本文将深入探讨如何使用JMeter进行多接口性能测试,这对于初学者来说是一份极具价值...
### 使用JMeter测试RabbitMQ的关键知识点 #### 一、JMeter与RabbitMQ集成概述 JMeter是一款广泛使用的开源性能测试工具,主要用于Web应用的压力测试。然而,它同样能够扩展到其他领域,如消息队列系统。RabbitMQ...
总结来说,"使用jmeter做ws压力测试"涵盖了JMeter的使用方法,从配置请求到设定压力测试参数,再到结果分析和性能优化,是一篇深入浅出的教程。对于开发者和测试人员来说,理解并掌握这些知识点对于提升Web服务的...
3. **Jmeter工作原理**:理解Jmeter如何模拟多个用户并发请求,以及如何记录和分析测试结果,这对于理解性能瓶颈至关重要。 4. **测试计划构建**:学习创建测试计划,包括定义线程组(虚拟用户)、采样器(模拟HTTP...
【JMeter压力测试报告】 本报告是一份基于Apache JMeter工具进行的压力测试文档,由一位高级测试工程师精心制作,旨在提供一个详细的模板供其他测试人员参考。报告详细记录了整个测试过程,包括测试内容、方法、...
此外,JMeter支持分布式测试,可以将测试负载分散到多台机器上,更准确地模拟大规模并发用户。 7. **性能指标**:在测试过程中,关注的关键性能指标包括吞吐量(每秒处理的消息数)、响应时间、错误率以及RabbitMQ...
在JMeter5.5中,你可以配置各种参数,如URL、方法(GET/POST)、请求数据、头信息等。 6. **逻辑控制器**:逻辑控制器允许你控制采样器的执行顺序和条件,例如,如果-控制器、循环控制器、随机控制器等,可以实现...
Jmeter WEB HTTP 压力测试实例 Jmeter WEB HTTP 压力测试实例是使用 Apache JMeter 工具对 WEB 应用程序进行压力测试的实例。...通过该实例,可以帮助读者更好地理解 JMeter 的使用方法和压力测试的原理。