对应用程序进行故障排除总是令人兴奋且充满挑战。然而,如果您没有配备必要的工具,这可能会令人沮丧。
使用 WebSphere 时,项目阶段的大部分时间必须花在排除故障和调整应用程序的性能上。
在大多数与性能相关的问题的情况下,您将被要求与开发人员合作获取堆转储以进行分析。
有多种方法可以获取堆转储。如果您想知道如何部署 WebSphere,本指南将会有所帮助。
获得堆转储后,您需要对其进行分析,但不幸的是您无法在记事本中打开它,因此您必须使用工具。不过,无需担心,您可以使用以下工具读取堆转储文件进行分析:
它们都是免费的!
IBM 堆分析器
IBM 的 HeapAnalyzer 可以帮助您找到 Java 堆泄漏的潜在区域。您可以在这里下载。
- 下载 jar 文件后,您可以按如下方式运行它。
java -Xmx4g -jar ha456.jar - 分析仪将打开。要打开堆转储,请转到“文件”>>“选项”并选择“堆转储”。根据文件大小,可能需要几秒钟,然后才会出现摘要。
怀疑泄漏的最简单方法是:
- 转到“分析”菜单>>“分析”视图

如果没有发现泄漏,您将看到如下内容:

因此,请尝试“分析”下的不同选项来熟悉该工具。
Eclipse 内存分析器 (MAT)
MAT 快速分析包含数亿对象的堆转储。快速检查可疑泄漏并在 1 分钟内生成出色的图形报告。
默认情况下,MAT 不支持 WebSphere 生成的堆转储,因此您必须使用插件。
您可以在此处下载 MAT并在此处下载插件。安装插件很简单。只需将插件 jar 文件复制到 MAT 插件文件夹即可。
- 下载 MAT 后,您可以通过运行以下命令将其打开:
./MemoryAnalyzer - 要分析堆转储文件,请转到“文件”>>“打开堆转储”并选择该文件。
- 这将需要几秒钟的时间,您将看到消息“入门向导”。

选择您想要的内容并单击“完成”。哦,我们发现了两名泄密嫌疑人。
MAT 非常强大,可以分析多个指标。
原来的:
- 按最大对象划分的顶级消费者
- 最大的顶级支配者等级
- 最大的顶级主宰包
- 线程概述
- 堆转储概述
如果您使用其他 J2EE 应用程序服务器,则可以使用VisualVM来分析堆转储。
您可能还有兴趣了解 Java 内存管理。




![2021 年如何设置 Raspberry Pi Web 服务器 [指南]](https://i0.wp.com/pcmanabu.com/wp-content/uploads/2019/10/web-server-02-309x198.png?w=1200&resize=1200,0&ssl=1)

