【问题标题】:Jmeter inconsistent result across networksJmeter跨网络的结果不一致
【发布时间】:2017-10-20 06:03:56
【问题描述】:

两张图都显示了 300 个线程、30 个加速时间、40 个循环

使用家庭网络执行: 平均响应时间:1445 毫秒

使用不同的网络执行(快速网络,250 Mbps 的下载和上传速度): 平均响应:90 毫秒!

为什么第二个网络没有显示错误或负载过重的迹象?事实上,平均时间只有 90 毫秒,没有一个线程花费的时间超过 1 秒。这是由于网络 2 更快还是其他原因? 我什至尝试了 1000 个线程,第二个网络的 1 个加速时间和平均响应仍低于 1 秒。终点不是繁重的工作,没有数据库访问。当我为不同的网络获得不同的结果时,我应该如何执行负载和压力测试?

【问题讨论】:

  • 这是正常的。这种差异涉及多个变量,例如网络带宽、执行时间、系统配置等。每个环境中的每次运行都会产生不同的结果。更高的带宽提供更好的响应时间。要模拟真实世界的场景,您需要在不同的网络条件和有效的工作负载模型中执行测试。载荷和应力的目标是不同的。在负载测试中,您需要研究在定义的工作负载(例如 50 个用户)下的行为。在压力测试中,您需要通过注入 50+ 用户来确定断点。希望这会有所帮助。
  • 谢谢。慢速网络和快速网络的断点是相同还是不同?我认为它们会相似,因为它应该显示服务器可以处理多少,对吧?唯一的区别是从 jmeter 加载的负载。快速网络将需要更多负载。我说的对吗?
  • 视情况而定。如果代码不好,它将在较低带宽和较高带宽下失败。您的测试必须是最佳的,并且工作负载应该模拟真实世界的场景。在与生产环境相同的环境中运行负载和压力测试。

标签: jmeter performance-testing load-testing


【解决方案1】:

您的负载测试结果不是内联的

  • 在上图中,您最多有 250 个虚拟用户和 3 分钟的测试持续时间
  • 在较低的图像上,您最多有 100 个虚拟用户和 40 秒的测试持续时间

所以我不认为这是同一个测试,负载模式完全不同。

确保:

  1. 您针对 2 个环境运行相同的测试
  2. 您监控被测应用程序端的基线操作系统运行状况指标(CPU、RAM、磁盘,如果您怀疑网络硬件是瓶颈,网络 IO)。您可以为此使用JMeter PerfMon Plugin
  3. 请注意以下 JMeter 指标:

    • 连接时间
    • 延迟
    • 吞吐量

      请参阅JMeter Glossary 了解其含义的详细说明。

【讨论】:

  • 谢谢,我如何在 1 小时内保持每秒 10 个线程的恒定增长速度? 300 个线程,30 个加速时间只会在 30 秒内每秒执行 10 个线程。谢谢
猜你喜欢
  • 2020-06-12
  • 2012-10-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-14
  • 2018-01-05
  • 2014-09-21
  • 2020-03-18
相关资源
最近更新 更多