Apache JMeter分布式测试循序渐进

这个简短的教程解释了如何使用多个系统来执行压力测试。在我们开始之前,有几件事要检查。

  • 系统上的防火墙被关闭或正确的端口被打开。
  • 所有的客户端都在同一个子网上。
  • 如果使用192.xxx10.xxx IP地址,服务器在同一个子网中。如果服务器不使用192.xx10.xx IP地址,则不应该有任何问题。
  • 确保JMeter可以访问服务器。
  • 确保在所有系统上使用相同版本的JMeter和Java。混合版本将无法正常工作。

一旦你确定系统已经准备就绪,现在是时候进行远程测试了。本教程假定您已经在所有系统上安装了JMeter。JMeter的工作方式是一个主控制器在多个从属系统上启动测试。

在本教程中,我们仅使用GUI模式进行演示。在现实生活中,你应该使用非GUI模式来开始你的负载测试
一个主人控制多个奴隶 一个Master控制多个Slave

25.1术语

在我们深入分步说明之前,最好定义一些术语并确保清晰。

Master
运行JMeter GUI的系统,它控制测试
Slave
运行 jmeter-server 的系统,它接受来自GUI的命令并向目标系统发送请求,
Target
我们打算强调测试的网络服务器
系统类别 系统类别

25.2分步

  1. 在从属系统上,转到jmeter / bin目录并执行 jmeter-server.bat在unix上的jmeter-server)。
  2. 在作为控制台的主系统上,打开Windows资源管理器并转到 jmeter / bin目录
  3. 在文本编辑器中打开jmeter.properties
  4. 编辑行remote_hosts = 127.0.0.1
  5. 添加IP地址。例如,如果我有运行在192.168.0.10,...,192.168.0.15上的JMeter服务器,则条目将如下所示:
    remote_hosts = 192.168.0.10,192.168.0.11,192.168.0.12,192.168.0.13,192.168.0.14
  6. 启动JMeter。
  7. 打开你想要使用的测试计划
简单的测试计划 简单的测试计划

25.2开始测试

此时,您已准备好开始负载测试。如果您想仔细检查从属系统是否正常工作,在您的编辑器中打开jmeter.log您应该在日志中看到以下内容。

将日志文件写入:/XXXX/XXXXX/bin/jmeter-server.log
创建的远程对象:UnicastServerRef [liveRef:[endpoint:[192.XXX:XXXXX](local),objID:[ -  6a665beb:15a2c8b9419:-7fff,3180474504933847586]]]

如果你没有看到这个消息,这意味着jmeter-server没有正确启动。有关调试问题的提示请转到提示部分有两种方法来启动测试:一个系统和所有系统。

25.3启动一个客户端

  1. 点击顶部的运行
  2. 选择远程启动
  3. 选择IP地址
开始一个奴隶 开始一个奴隶

25.4启动所有客户端

  1. 点击顶部的运行
  2. 选择远程全部开始或使用Ctrl  +  Shift  +  R
启动所有的奴隶 启动所有的奴隶

25.5限制

分布式测试有一些基本的限制。这是已知项目的列表,没有特定的顺序。

  1. RMI不能在没有代理的情况下跨子网进行通信; 因此JMeter也不能没有代理。
  2. 从版本2.9开始,JMeter将所有测试结果剥离响应数据发送到控制台,这样可以减少对网络IO的影响。确保您监控您的网络流量,以免流量造成争用
  3. 运行在2-3 GHz CPU(最新CPU)上的单个JMeter客户端可以处理1000-2000个线程,具体取决于测试类型。

25.7提示

在某些情况下,防火墙可能仍然阻塞RMI流量。

防病毒和防火墙

在负载测试期间应该停止杀毒软件,因为它会严重影响导致错误结果的时间。

防火墙需要停止从Windows服务或至少一些端口需要打开。

  1. 打开控制面板
  2. 打开管理工具
  3. 双击服务
  4. 进入赛门反病毒,右键单击并选择停止

Windows防火墙

  1. 打开网络连接
  2. 选择网络连接
  3. 右键单击并选择属性
  4. 选择高级选项卡
  5. 取消选中互联网连接防火墙

Linux的

在Linux上,iptables可能默认打开。有关说明,请参阅用户手册中的 远程测试

在RedHat(或衍生产品)上,iptables默认是开启的。执行

服务iptables停止
停止Linux防火墙或确保您打开正确的端口。
源自官网:http://jmeter.apache.org/usermanual/jmeter_distributed_testing_step_by_step.html

猜你喜欢

转载自blog.csdn.net/qq_27791709/article/details/78952141
今日推荐