【发布时间】:2019-10-05 04:24:28
【问题描述】:
问题:
我们的应用程序(在 Java 中使用 Vertx)占用了超过 10 GB 的堆内存。它在应用程序中造成内存泄漏。
我尝试了什么:
为了分析原因,我使用 jmap 进行了堆转储并使用 jhat 进行了分析。 jhat 的结果只是表明某个字节本身占用了 8 GB 的内存和数百万个实例。但是每个数组或集合内部都使用字节。我没有在我的项目中直接使用字节。
需要帮助:
请建议我在我的代码中调试负责内存泄漏的类的方式。任何可以显示层次结构和实例计数的工具。
【问题讨论】:
-
java 版本?很多字节数组实例通常意味着很多字符串。并且任何堆转储分析器都应该能够告诉您所有这些字节数组的来源......
标签: memory-leaks jvm out-of-memory monitoring heap-memory