我已使用下图所示的Jmeter配置了一个Testplan,并一直在使用CLI运行并行负载测试。MAC用户
我已经配置了与AWS RedShift数据库的连接,当我检查查询监控时,所有查询都陷入“正在运行”状态。
一段时间后,在我的终端上,出现以下错误:JMeter 5.3 java.lang.OutOfMemoryError。
我进入了bin / jemeter文件并进行了内存更改,但是我仍然面临着同样的问题。
当我从DBeaver运行相同的查询时,查询将运行并完成,并且可以在Redshift查询监视中看到。
我如何解决内存问题,以使查询在不陷入运行状态的情况下运行?
以下是即使将堆大小增加到5 GB后我仍然得到的错误。
WARNING: package sun.awt.X11 not in java.desktop
Creating summariser <summary>
Created the tree successfully using //Users/mbyousaf/Desktop/redshit-test/test-redhsift.jmx
Starting standalone test @ Wed Dec 02 14:53:17 GMT 2020 (1606920797442)
Waiting for possible Shutdown/StopTestNow/HeapDump/ThreadDump message on port 4445
Warning: Nashorn engine is planned to be removed from a future JDK release
java.lang.OutOfMemoryError: Java heap space
Dumping heap to java_pid35596.hprof ...
Heap dump file created [3071802740 bytes in 3.747 secs]
哪个确切的OutOfMemoryError?有几种可能的原因:
在未看到完整的测试计划的情况下(至少是屏幕截图)就不可能说明问题所在,因为你可能添加了许多侦听器,并且每个侦听器都在内存和jmeter.log文件中存储了很大的数据库查询响应(肯定不是在屏幕截图形式)在大多数情况下包含问题原因或至少一个线索
我从测试计划中删除了所有侦听器,因为它仅包含我添加的JDBC请求。outodMemoryError与堆空间链接,我增加了大小,但完成我在阈值中设置的所有查询仍需要一个小时以上的时间。我已将堆空间增加到5 GB
在将堆大小增加到5gigbytes之后,我得到以下erorr:java.lang.OutOfMemoryError:Java堆空间