JMeter 分布式测试:主从配置

⚡ 智能摘要

分布式测试 JMeter 它采用主从配置,利用多台机器向单个目标服务器生成负载。本演练将解释客户端-服务器模型,并详细介绍配置、运行和排查远程服务器故障的具体步骤。 JMeter 测试。

  • 🖥️ 主从模式: 主人运行 JMeter GUI 和控制每个从节点,而从节点向目标服务器发送请求。
  • 🌐 网络前提条件: 所有机器必须共享同一个子网,运行相同的操作系统。 JMeter 版本,并禁用防火墙。
  • ⚙️ 从属配置: 在每个从服务器上启动 jmeter-server.bat,然后在主服务器的 jmeter.properties 文件中列出每个从服务器的 IP 地址。
  • ▶️ 运行测试: 从主 GUI 中选择“运行”>“远程启动”,然后选择从属 IP 开始生成负载。
  • 🛠️ 故障排除限制: 重启 jmeter-server.bat 并禁用防火墙;每个从节点大约处理 100 到 300 个线程。

JMeter 分布式测试

什么是分布式测试?

分布式 测试与验证 是一种使用多个系统进行测试的方法。 压力测试. 分布式测试用于测试网站和服务器应用程序同时与多个客户端一起工作时的情况。

分布式测试采用客户端-服务器模型,如下图所示:

分布式测试

  • 总音量运行该系统 JMeter 图形用户界面,用于控制每个从属单元。
  • 奴隶:系统正在运行 JMeter-server,它接收来自主服务器的命令,并向被测服务器发送请求。
  • Target:被测 Web 服务器,它接收来自从服务器的请求。

远程测试示例

前提:

  • 系统上的防火墙已关闭。但在某些情况下,防火墙可能仍然会阻止流量。您应该禁用防火墙。 Windows 防火墙或 Linux 防火墙。
  • 所有机器都应该在同一个子网中。如果机器不在同一个子网中,它们可能无法在网络中相互识别。
  • 使用相同版本的 JMeter 以避免意外的错误/问题。

这里是 路线图 对于本次测试:

远程测试示例

步骤1)系统配置

设置 奴隶 系统:进入 jmeter/bin 目录并执行文件“jmeter-server.bat”。

假设一台从属机器的 IP 地址为 192.168.0.10。 Windows你应该会看到一个类似下图的窗口:

系统配置

点击 在系统中,进入 /bin 目录并编辑文件 jmeter.properties然后,按如下方式添加从机 IP 地址:

系统配置

步骤 2)运行测试

至此,您已准备好开始负载测试。在主机器上运行以下命令: JMeter GUI 并打开测试计划。

点击菜单栏上的“运行”,然后选择 远程启动 -> 选择 IP地址 奴隶机器。

运行测试

步骤 3) 故障排除

如果您无法从上述机器运行测试并看到以下错误,只需请从属机器的所有者运行 jmeter-server.bat 文件即可。

故障排除

要解决此错误,请禁用主机器和从机器上的防火墙。

局限性

有一些基本的 限制 用于分布式测试。以下是已知项目列表:

  • 服务器和所有客户端都必须处于开启状态。 相同 子网。
  • 分布式测试要求目标服务器具备强大的处理能力。目标服务器很容易…… 超载 如果它收到来自分布式系统的过多请求。 JMeter 试验。
  • 一个单一的 JMeter 从属系统通常可以处理有限数量的线程,范围从 100 到 300 个线程,具体取决于硬件配置和测试计划的复杂性。
  • 分布式的 JMeter 测试很复杂,对于初学者来说很难构建。

常见问题

是的。人工智能工具可以汇总大量结果集、检测性能异常并突出显示从属机器上的瓶颈。它们可以加快分析速度,但您仍然需要自行配置和运行分布式测试基础设施。

不。人工智能可以辅助脚本编写和结果分析,但要模拟真实世界的高并发负载,仍然需要分布式测试机器。人工智能是对分布式测试的补充,而不是取代基础设施。

一个主节点可以驱动多个从节点。实际的限制取决于主节点的 CPU、内存和网络容量。每个从节点通常处理 100 到 300 个线程,因此处理能力会随着从节点数量的增加而扩展。

负载测试用于衡量系统在预期负载下的运行情况。分布式测试将负载分散到多台机器上,从而实现比单台机器更高的并发能力。

总结一下这篇文章: