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

Jmeterjava.lang.OutOfMemoryError:超过GC开销限制

穆宾白
2023-03-14

我使用Jmeter将工作负载注入部署在AWS EC2实例上的应用程序。测试必须非常庞大:它持续10个小时,工作负载配置文件具有双峰形状,在5分钟内大约有2600个请求。实际上我有一个m3。部署应用程序的xlarge实例,8 m3。xlarge实例每个实例运行一个jmeter实例。使用python脚本,要注入的工作负载在8个客户机实例之间进行分割,因此在示例中,如果原始工作负载要注入800个请求,那么每个jmeter实例将注入100个请求。正如我所说的,整个测试持续10个小时,分为5分钟的时间段。每5分钟应用一点工作负载变化。实际上,我从每个jmeter实例中获得java。lang.OutOfMemoryError:GC开销限制在测试启动后立即超过错误,并且没有请求到达应用程序。我在网上和stackoverflow上读了很多书,我认为可能的错误是:

>

  • JMV堆大小太小-

    设置HEAP=-Xms4g-Xmx4g

    设置new=-XX: Newsize=4g-XX: MaxNewsize=4g

    代码中的一些错误导致垃圾收集器继续被无用地使用。因此,我从测试中删除了所有jmeter侦听器。我特别使用了TableVisualizer、ViewResultsFullVisualizer、StatVisualizer和GraphVisualizer。

    无论如何,问题仍然存在。我真的不知道如何解决它。我知道10个小时的测试和2600个音高请求可能是一个非常沉重的测试,但我认为应该有一种方法来执行这个。我使用EC2m3.xlarge实例,所以如果有用的话,我甚至可以将堆大小提高到8G,或者在更多的客户端之间分配工作负载,因为我使用现货实例,所以我不会支付更多的费用,但是因为我有为了解决这个问题,客户端实例的数量已经翻了一番,从4个增加到8个,而且不起作用。我有点困惑,我想在继续获得越来越多的资源之前知道r的建议。提前谢谢你。

  • 共有1个答案

    娄丁雨
    2023-03-14

    你的堆设置看起来不对:设置HEAP=-Xms4g-Xmx4g设置new=-XX: Newsize=4g-XX: MaxNewsize=4g

    新的等于堆大小,这是错误的。首先评论新部分。

    你能做一个ps-eaf | grep java并显示输出吗?

    并检查您是否尊重这些建议:

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

    最后,显示测试计划的概述,以及启动的线程数。

     类似资料:
    • 在Android Studio1.5.1只是通过移动源代码从一个系统到另一个即使干净的构建是成功的,但当代码运行我得到这种错误 java.lang.OutOfMemoryError: GC开销限制超过错误:任务': app: dexDebug'执行失败。 我在应用程序中添加了以下代码。格拉德尔还:

    • 我的Hippo应用程序失败主要是在与我的数据库进行连接时,GC开销超过了限制,有时低于错误。 javax。jcr。RepositoryException:未经检查的异常:java。lang.OutOfMemoryError:Java堆空间 我试图尽可能地清理我的后端。我知道垃圾收集器占用的时间太长,每次运行时恢复的内存很少。所以我需要更新我的堆大小,也可以使用-XX:-usegcoveredlim

    • 使用当我尝试构建我的项目时,这种错误越来越多: 错误:任务“:app:CompiledEbugJavaWithJavac”执行失败。OutofMemoryError:超出GC开销限制 有什么办法解决这个问题吗?

    • 我正在尝试预处理一个大的txt文件(10G),并将其存储在二进制文件中以备将来使用。当代码运行时,速度会减慢,并以 异常线程"main"java.lang.OutOfMemoryError: GC开销限制超过 输入文件具有以下结构 这是我正在使用的代码: 基本上,它通过in文件并将数据存储到对象HMbicnt(这是一个哈希映射)。一旦在第二列中遇到新值,它应该将对象写入输出文件,释放内存并继续。

    • 我已经阅读了与此错误相关的所有其他问题,并尝试了他们的解决方案,但没有任何帮助。 这是我的身材。格拉德尔 我在Android Studio 2.1.3和Android Studio 2.2.3上试过,我试过卸载jdk,然后重新安装。我已经格式化了窗口并重试,但没有用。 我一直在学习java。lang.OutOfMemoryError:超出GC开销限制错误 我该如何解决这个问题?

    • 我的JBoss服务器出现了一个奇怪的问题:引发的异常: 我寻找内存不足的情况,但内存可用性看起来很好: 以前有没有人遇到过这个GC异常,当时似乎内存很大?