【问题标题】:Web Service Responses & Java Heap Space [duplicate]Web 服务响应和 Java 堆空间 [重复]
【发布时间】:2021-01-28 14:39:32
【问题描述】:

通过 Web 服务提交约 300 个请求并获得响应以进行验证后,我收到“Java 堆空间”错误。每个 Web 服务响应的大小约为 1 MB。

我已将根本原因缩小到这些大型服务响应,但我该如何解决或解决这个问题?根据对此问题的研究,我已经尝试了以下操作项,但没有成功:

  • 更新到空手道 9.6
  • 更新到 Java 11
  • 增加内存大小
  • 减少日志记录(调试到信息等)

对于每个响应大小约为 50 KB 的不同 Web 服务也会发生同样的情况,尽管它需要更长的时间才能耗尽内存。在 800 个订单后,它快用完了:

1823874 [错误] 无法在项目 mvrinteractive 上执行目标 org.codehaus.mojo:exec-maven-plugin:1.6.0:java(默认):执行 Java 类时发生异常。 Java 堆空间 -> [帮助 1] org.apache.maven.lifecycle.LifecycleExecutionException: 无法在项目上执行目标 org.codehaus.mojo:exec-maven-plugin:1.6.0:java (默认) mvrinteractive: 执行 Java 类时发生异常。 Java 堆空间

【问题讨论】:

  • 如果在这么多请求后出现错误,那么您的代码中可能存在内存泄漏
  • 对于未来的读者 - 升级到新版本有帮助,Peter 还建议了这段代码,它很有帮助:* string response = responseBytes

标签: java maven out-of-memory karate heap-memory


【解决方案1】:

请(请)尝试 0.9.9.RC3 版本。请在此处创建一个示例,以便我们在需要时进行调查:https://github.com/intuit/karate/issues/1394#issuecomment-751252092

希望新的 / dev 版本是一个改进。否则,我们可以查看模拟(您帮助我们)并找出一个选项,例如我们必须更改代码以使用流,或关闭日志。

还要看看这个有趣的选项:https://stackoverflow.com/a/64352676/143475

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-26
  • 1970-01-01
  • 2016-01-21
  • 2017-09-06
  • 1970-01-01
  • 2019-02-24
相关资源
最近更新 更多