当前位置: 首页 > 知识库问答 >
问题:

jmeter响应时间与我在日志文件中看到的差异

颜嘉誉
2023-03-14

我已经搜索了堆栈溢出,但没有找到任何接近我需要的东西,所以如果它是重复的,告诉我,我会删除这篇文章。

我有一个web应用程序,它是一个单一的REST服务,只执行一个Thread.Sleep(10000)。如果方法只Hibernate10秒,那么我的所有请求都应该有10-11秒的平均响应时间,对吗?

要在JMeter上测试它,通常我使用200个线程和5秒的斜坡。当测试开始时,我的平均响应时间保持在10秒,但在100个请求之后,它开始增加,直到35-42秒。

我非常担心我的实现,所以我在方法的第一行添加了一个日期,并打印一个日志来显示它开始和结束的时间。所有日志信息显示请求的持续时间为10秒。

public Response go(@MultipartForm FileUploadForm form){
    Date start = new Date();
    try  {
        Thread.sleep(10000);
        logger.info("Time " + sdf.format(start) + " - " + sdf.format(new Date()));
    } catch (Exception e){
        logger.error("Error:", e);
        return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build();
    }
    return Response.ok("OK").build();
}

我想知道为什么Jmeter会增加响应时间,而我的日志会显示我所期望的时间。可能是Jmeter上有问题,或者我真的需要担心我的服务?

提前道谢。

测试计划

共有1个答案

岳卓君
2023-03-14

您的问题如下:

  • 您正在使用GUI模式
  • 您有一个查看结果树侦听器

因此,视图结果树侦听器保存每个示例的结果,使用的内存不断增加,导致越来越多的垃圾回收,然后是OOM。

你绝对应该读一下:

  • http://www.ubik-ingenierie.com/blog/jmeter_performance_tuning_tips/
  • http://jmeter.apache.org/usermanual/best-practices.html

快速修复:

  • 使用非GUI
  • 仅使用查看结果树输出错误或删除它
 类似资料:
  • 我使用CXF和JAX-RS构建RESTFul API,为我的web应用程序提供数据。我想知道是否有可能记录请求X到达我的API、被处理然后作为响应返回所花费的时间。 我已经将自己的CXF记录器定义为JAX-RS特性,因为<code> 有没有一种方法可以从客户端跟踪时间并记录下来?

  • 我正在通过一次发送250个请求来进行API负载测试。 1.配置 很自然,当很多用户同时请求时,服务器需要更长的时间来响应,这是它在这里说的。参见http://jmeter-plugins.org/wiki/responsetimesvsthreads/。然而,当测试这是我发现的… 活动线程与用户请求的数量相同吗?如果是,为什么会在一致的基础上发生? Update-1运行了另一个测试,并增加了这一次

  • 我正在运行一些创建应用程序、上传文档等的JMeter测试。我知道随着文档和应用程序的创建,测试也在通过。我可以证实这一点。然而,有趣的是,JMeter中的响应时间比我在运行负载测试时手动对站点计时时要慢得多。JMeter中的页面加载时间平均约为20秒,而实际只需5秒。你知道是什么导致了这种差异吗?

  • 我使用NetBeans7.3在Tomcat上部署WebApplication。当我运行/部署应用程序时,我可以在输出窗口中看到服务器日志和“Apache Tomcat日志”。 但是在我的应用程序中,我用log4j指定了另一个日志文件,仅用于我的应用程序日志。 我怎样才能像直接在NetBeans中看到其他日志输出一样看到我的应用程序的日志呢? 我的log4j有一个附加日志的规范--所以我的类的所有警

  • 我使用了JMeter2.8 我已经使用web服务调用测试了Http请求。我需要计算响应时间。我不知道怎么计算 我已经参考了这个链接。我认为他们在Jmeter中使用了一些插件。是否需要使用插件来计算响应时间? 在这个问题中还提到了最后一个字节的时间和第一个字节的时间 在哪里可以找到这两个变量n Jmeter

  • 在运行Jmeter脚本时,我得到了401响应代码。下面是示例结果、请求头、响应体和响应头。 样本结果:线程名称:线程组1-1样本开始:2022-05-04 20:13:44 IST加载时间:226连接时间:0延迟:226字节大小:591发送字节:876字节标头大小:417字节正文大小:174样本计数:1错误计数:1数据类型(" text"|"bin"| " "):文本响应代码:401响应消息: 请