使用方法 JMeter 用于性能和负载测试

⚡ 智能摘要

JMeter 性能测试衡量 Web 应用程序在高并发负载下的运行情况,它结合了负载测试和压力测试,以揭示最大容量、响应时间和瓶颈,从而避免真实用户使服务器不堪重负。

  • 🧩 测试计划: 线程组、采样器和监听器定义了测试。
  • 👥 主题组: 设置用户数、启动期和循环次数。
  • 📊 听众: 图表结果以可视化的方式呈现性能数据。
  • 🔥 负荷与应力: 负载模型预测交通量;压力测试找出临界点。
  • 🤖 人工智能协助: AI模型加载配置文件并标记性能下降情况。

JMeter 性能和负载测试

JMeter 负载测试

JMeter 负载测试 是使用名为 Apache JMeter 这是基于的开源桌面应用程序 Java. JMeter 负载测试是确定被测 Web 应用程序是否能满足高负载要求的重要工具。它还有助于分析重负载下的整体服务器。

JMeter 性能测试

JMeter 性能测试 is 测试与验证 使用的方法 Apache JMeter 测试 Web 应用程序的性能。 JMeter 进行性能测试有助于测试静态和动态资源,有助于发现网站上的并发用户,并为性能测试提供各种图形分析。 JMeter 性能测试包括Web应用程序的负载测试和压力测试。

JMeter 性能测试

Apache JMeter 测试工具提供以下内容 得益 in 性能测试

  • JMeter 可以用来测试两者的性能 静止 资源如 JavaScript 和 HTML,以及 动态 资源,例如 JSP、Servlets 和 AJAX。
  • JMeter 也可以是 通过各种方式找到 您的网站可以处理的最大并发用户数
  • JMeter 提供多种性能报告的图形分析。

JMeter 性能测试包括:

JMeter 性能测试

  • 载荷 测试:通过模拟多个用户访问来模拟预期使用情况 Web服务 同时。
  • 应力 测试:每个 Web 服务器都有最大负载能力。当负载超出限制时,Web 服务器开始响应缓慢并产生错误。测试的目的是 压力测试 是找到 Web 服务器可以处理的最大负载。

下图显示了 JMeter 负载测试模拟重负载:

JMeter 性能测试

在中创建性能测试计划 JMeter

在本教程中,我们将进行性能分析。 Google.com 为 1000 位用户提供各种服务 性能测试工具 以确保网站可以处理负载并提供无缝的用户体验。

在测试目标 Web 应用程序的性能之前,我们应该确定:

  • 正常负载:访问您网站的平均用户数量
  • 重物:访问您网站的最大用户数量
  • 什么是你们的支付 目标 在这次测试中?

这里是 路线图 这个实例

在中创建性能测试计划 JMeter

步骤1)添加线程组

  1. 开始 JMeter
  2. 选择 测试计划 在树上
  3. 添加 线程组

右键点击“测试计划”,添加新的线程组: 添加 -> 主题(用户) -> 线程组

添加线程组

在线程组控制面板中,输入线程属性,如下所示:

添加线程组

  • 线程数:100(连接目标网站的用户数:100)
  • 循环次数:10(执行测试的次数)
  • Ramp上升期:100

线程数和循环数是 不同。

添加线程组

Ramp-Up Period 告诉 JMeter 需要多长时间 延迟 在开始下一个用户之前。例如,如果我们有 100 个用户和 100 秒的 Ramp-启动期间,启动用户之间的延迟为 1 秒(100 秒/100 个用户)

添加线程组

步骤2)添加 JMeter 分子

现在我们确定 JMeter 本测试中包含以下元素。这些元素包括

  • HTTP 请求默认

可以通过右键单击线程组并选择来添加此元素: 添加 -> 配置元素 -> HTTP 请求默认值。

添加 JMeter 元素

在 HTTP 请求默认值控制面板中,输入要测试的网站名称(http://www.google.com)

添加 JMeter 元素

  • HTTP请求

右键单击线程组并选择: 添加 -> 采样器 -> HTTP请求.

HTTP请求

在 HTTP 请求控制面板中,路径字段指示哪个 URL 请求 你想发送到 Google 服务器。

HTTP请求

例如,如果您输入“日历” 在路径字段中。 JMeter 将创建 URL 请求 http://www.google.com/calendar 至 Google 服务器

HTTP请求

如果保留路径字段 空白 JMeter 将创建 URL 请求 http://www.google.com 至 Google 服务器。

在此测试中,您将“路径”字段保留为空白,以使 JMeter 创建 URL 请求 http://www.google.com 至 Google 服务器。

步骤 3)添加图形结果

JMeter 可以图形格式显示测试结果。

右键单击“测试计划”, 添加 -> 倾听者 -> 图表结果

添加图表结果

步骤4)运行测试并获取测试结果

媒体中心 运行 工具栏上的按钮(Ctrl + R)启动软件测试流程。您将实时看到图形上显示的测试结果。

下图展示了测试计划的图表,我们模拟了 100 位访问网站的用户 www.google.com.

运行测试并获取测试结果

图片底部有以下统计数据,以颜色表示:

  • 黑色:当前已发送的样本总数。
  • Blue:当前已发送的所有样本的平均值。
  • 红色:当前的标准差。
  • 绿色:吞吐率,表示服务器每分钟处理的请求数

让我们分析一下性能 Google 服务器如下图所示。

运行测试并获取测试结果

要分析被测 Web 服务器的性能,你应该关注 2 个参数

  • 生产能力
  • 偏差

生产能力 是最重要的参数。它代表服务器处理重负载的能力。 更高 吞吐量是 更好 是服务器性能。

本次测试中,吞吐量为 Google 服务器每分钟运行 1,491.193 次。这意味着 Google 服务器每分钟可处理 1,491.193 个请求。这个数值相当高,因此我们可以得出结论: Google 服务器性能良好

偏差 显示为红色——表示与平均值的偏差。 这个 更好.

让我们比较一下以下方面的表现: Google 服务器与其他Web服务器之间的通信。这是网站的性能测试结果。 http://www.yahoo.com/ (您可以选择其他网站)

运行测试并获取测试结果

被测网站的吞吐量 http://www.yahoo.com 是 867.326/分钟。这意味着该服务器每分钟处理 867.326 个请求,低于 Google.

偏差为 2689,远高于 Google (577)。因此,我们可以确定该网站的性能低于…… Google 服务器。

注意: 上述数值取决于多种因素,例如当前服务器负载。 Google您的网络速度、CPU 性能等等都会影响结果。因此,您不太可能得到与上述相同的结果。所以别担心!如果您想了解服务器负载如何影响性能以及如何测试性能,您可能会对以下内容感兴趣: 负载测试教程 有用。

故障排除

如果您在运行上述场景时遇到问题……请执行以下操作

  1. 检查您是否通过代理连接到互联网。如果是,请删除代理。
  2. 打开Jmeter的一个新实例
  3. 打开 性能测试计划.jmx 在Jmeter中
  4. Double 点击线程组->图表结果
  5. 运行测试

常见问题

吞吐量是指请求的数量。 JMeter 每秒完成的任务数;更高的吞吐量意味着服务器可以处理更多的负载。

一个单一的 JMeter 实例模拟数百至数千名用户;跨机器的分布式测试可扩展至数万。

JMeter 它是免费的、开源的,而且 JavaLoadRunner 是一款基于软件的软件,而 LoadRunner 是一款商业软件,具有更广泛的协议支持和高级分析功能。

是的,人工智能会阅读。 JMeter 结果图表显示异常情况和瓶颈,并将响应缓慢与负载水平联系起来。

AI 生成逼真的工作负载模型,自动调整线程和启动设置,并根据历史数据预测容量。

总结一下这篇文章: