api - JMeter 在尝试生成 HTML 报告时内存不足
问题描述
我需要帮助,也许有人有类似的问题JMeter report generation
我有带有 SOAP API 请求的 JMeter 脚本,它们正在下订单。在订单创建期间没有问题,但是当所有请求都完成并且 JMeter 尝试生成报告时,我收到一个错误:
java.lang.OutOfMemoryError: Java heap space
Dumping heap to java_pid8676.hprof ...
Heap dump file created [7011161840 bytes in 93.212 secs]
Uncaught Exception java.lang.OutOfMemoryError: Java heap space in thread Thread[StandardJMeterEngine,5,main]. See log file for details.
我在执行期间使用 JConsole 监控 JMeter,并注意到在测试运行期间堆大部分为 25%,而在报告生成期间上升到 100%。提前致谢
解决方案
该错误清楚地表明 JMeter 缺少Java 堆空间以完成报告生成操作,可能是您执行了长时间运行的测试并且您的.jtl 结果文件非常大,因此它不适合 7GB 的堆. 这通常表明开发人员不太熟悉内存管理,并且无法想出比一次性将所有内容加载到内存中而不是批量/缓冲区执行更好的解决方案,因此在JMeter中提出问题可能是个好主意布吉拉
因此,只需通过操作参数来增加分配给 JMeter 的 JVM 堆大小-Xmx
,即使您的系统将开始密集使用交换文件,我相信您应该能够忍受这一点。
替代选项是使用JMeter Plugins Command Line Graph Plotting Tool生成表格/图表,但是这样您将获得单独的结果,而不是花哨的 HTML 仪表板
推荐阅读
- python - Pytorch - TypeError: ToTensor() 使用 torchvision.transform 不接受任何参数
- asp.net - 如何将 LightInject 与 Web 表单一起使用?
- linux - 使用 Vagrant 和 Virtual box 创建开发服务器时出错
- bash - 加入的意外问题
- cpu-architecture - 为什么看存储的电影不慢
- windows - 在 AWS 如何将“Microsoft Windows Server 2016”服务器实例迁移到“Microsoft Windows Server 2016 with SQL Server 2017 Standard”?
- node.js - 使用 nodejs 正则表达式查找 ksh 函数
- python - 限制特定 pyparsing 表达式中的新行
- algorithm - 如何实施 SAT 求解器以进行 kSAT 练习?
- python - 使用一行转换列表中所有元素的属性类型