【问题标题】:Why difference in out when using Jmeter to load test vs HP Load runner?为什么在使用 Jmeter 进行负载测试与 HP Load runner 时存在差异?
【发布时间】:2011-05-02 12:01:47
【问题描述】:

这里是场景

我们正在对 Web 应用程序进行负载测试。该应用程序部署在两个 VM 服务器上,并由一个硬件负载平衡器分配负载。

这里使用了两个工具 1. HP Load Runner(一种昂贵的工具)。 2. JMeter - 免费

开发团队使用 JMeter 来测试大量用户。它也没有像 Load Runner 那样的任何许可限制。

如何运行测试? 使用一些参数调用 URL,Web 应用程序读取参数、处理结果并生成 pdf 文件。

在运行测试时,我们发现对于 1000 个用户的负载分布在 60 秒的时间段内,我们的应用程序需要 4 分钟来生成 1000 个文件。 现在,当我们通过 JMeter 传递相同的 url 时,1000 个用户,加速时间为 60 秒, 应用程序需要 1 分 15 秒来生成 1000 个文件。

我很困惑为什么会有这么大的性能差异。

Load runner 在两台服务器上都安装了 rstat 守护进程。

有什么线索吗?

【问题讨论】:

  • 您的问题得到答案了吗?

标签: jmeter stress-testing


【解决方案1】:

你真的有四种可能:

  1. 您正在测量两个不同的事物。检查您的计时记录结构。
  2. 您的请求和响应信息在这两个工具之间是不同的。请使用 Fiddler 或 Wireshark。
  3. 您的测试环境初始条件不同,会产生不同的结果。测试 101 项,但在追踪此类问题时经常被忽视。
  4. 您的负载运行程序环境中有一个过载的负载生成器,这导致所有虚拟用户速度变慢。例如,您可能正在记录所有内容,从而导致您的文件系统成为测试的瓶颈。故意使您的生成器负载过低,降低日志记录级别,并观察您如何使用内存进行关联,这样您就不会创建导致高交换活动的物理内存超额订阅情况。

至于上面关于 JMETER 更快的评论,我已经对非常复杂的代码进行了基准测试,对于非常复杂的代码,Loadrunner 基于 C 的解决方案在执行一次迭代时比 JMETER 中基于 Java 的解决方案更快。 (方法:动态创建数据文件以供批量抵押处理上传的复杂算法。p3:800Mhz。2GB RAM。LoadRunner 每小时 180 万次迭代,单个用户不受监管。JMETER,120 万次)一旦你添加了节奏是服务器的响应时间,这对两者都是确定的。

需要注意的是,LoadRunner 会跟踪其内部 API 时间,以直接解决工具影响测试结果的指控。如果您打开结果集数据库集(.mdb 或 Microsoft SQL 服务器实例,视情况而定)并查看 [event Meter] 表,您将找到“Wasted Time”的参考。浪费时间的定义可以在 LoadRunner 文档中找到。

【讨论】:

    【解决方案2】:

    罪魁祸首很可能在于脚本的结构。

    需要考虑的事项:

    • 思考/等待时间:录制时, Jmeter不会自动放入 等待。
    • 请求的项目:是 Jmeter 仅请求/下载 加载运行器获取所有内容时的 HTML 页面 嵌入文件?
    • 无效响应: 所有 1000 Jmeter 响应都有效吗? 如果你有 1000 个线程 单桌面,我怀疑你 杀死了 Jmeter 而不是你的全部 回复有效。

    【讨论】:

    • 所有 JMeter 响应都是有效的。我检查文件的数量。另一个需要注意的有趣的事情是这个对服务器的调用是异步请求。您不必等待回复回来。
    【解决方案3】:

    不要忘记测试应用程序本身会测量自己,因为响应的到达是基于测试机时间的。所以从这个角度来看,答案可能是 JMeter 更快。

    第二件事是BlackGaff提到的等待时间。

    始终使用 jmeter 中的结果树检查结果。

    并且始终将测试应用程序放在单独的硬件上以查看真实结果,因为测试应用程序本身会加载服务器。

    【讨论】:

      猜你喜欢
      • 2019-03-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多