java - 如何调试 Java 内存错误?

标签 java performance memory-leaks profiling

有一个在 Tomcat 上运行的 Java Struts 应用程序,存在一些内存错误。有时它变得缓慢并囤积 Tomcat 的所有内存,直到它崩溃。

我知道如何查找和修复“正常代码错误”,使用测试、调试等,但我不知道如何处理内存错误(How can I reproduce?How can I test?有哪些地方?哪里的代码更容易造成内存错误?)。

在一个问题中:我可以从哪里开始?谢谢

编辑:

IT 部门发送的快照(我没有直接访问生产应用程序)

enter image description here

最佳答案

使用众多“分析器”之一。它们连接到 JVM 并可以告诉您每秒创建了多少个新对象以及它们是什么类型等信息。

这只是其中之一:http://www.ej-technologies.com/products/jprofiler/overview.html 我用过这个,没问题。

关于java - 如何调试 Java 内存错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6248491/

相关文章:

java - Jogl 中的透明多边形

php - 如何改进 PHP 的 XML 加载时间?

c - 如何检测分配内存块的位置?

java - Spring 集成: How to set up void outbound gateway methods

java - 在 Java 应用程序中管理时间的最佳方法是什么?

java - 我尝试使用 spring.io Social 访问 Facebook,但 isAuthorized() 方法失败

Python 内存泄漏 - 已解决,但仍然感到困惑

html - 整理 CSS 代码

c++ - Wide String vs String,它会影响 Windows C++ 中的性能吗

c# - 当 SSL 和客户端证书与 HttpWebRequest 对象一起使用时发生内存泄漏