个性化阅读
专注于IT技术分析

如何分析WebSphere Java堆转储以进行故障排除

本文概述

应用程序故障排除总是令人兴奋且充满挑战。但是, 如果你没有配备必需的工具, 那就太令人沮丧了。

如果你正在使用WebSphere, 那么在项目阶段的大部分时间里, 你都需要花费故障排除时间并调整应用程序性能。

在大多数情况下, 与性能相关的问题都会与开发人员一起工作, 并且会要求你使用堆转储进行分析。

有多种方法来进行堆转储。如果你想知道如何使用WebSphere, 那么本指南将为你提供帮助。

有了堆转储后, 你需要进行分析, 不幸的是, 你无法在记事本中打开它, 因此必须使用这些工具。但是请放心, 以下工具将帮助你读取堆转储文件以进行分析。

它们都是免费的!

IBM HeapAnalyzer

IBM的HeapAnalyzer可帮助你找到可能的Java堆泄漏区域, 你可以从此处下载。

  • 下载jar文件后, 你可以按以下方式运行它们。
java -Xmx4g -jar ha456.jar
  • 它将打开分析仪。要打开堆转储, 请转至文件>>选项, 然后选择堆转储。根据文件大小, 可能要花几秒钟, 然后为你提供摘要视图。
ibm-heap-analyzer-summary

怀疑是否有泄漏的最快方法是:

  • 转到分析菜单>>分析视图
分析视图

如果未发现泄漏, 它将显示类似以下内容。

无泄漏

因此, 继续尝试”分析”下的各种选项, 以熟悉该工具。

Eclipse内存分析器(MAT)

MAT可以分析具有数亿个对象的堆转储, 而且速度很快。快速检查可疑的泄漏, 并在一分钟内生成出色的图形报告。

默认情况下, MAT不支持WebSphere生成的堆转储, 因此你需要使用插件。

你可以从此处下载MAT, 并从此处下载插件。插件的安装很简单。只需将插件jar文件复制到MAT plugins文件夹即可。

  • 下载MAT后, 你可以通过执行
./MemoryAnalyzer
  • 要分析堆转储文件, 请转至文件>>打开堆转储并选择文件
  • 这将花费几秒钟, 并提示” Getting Started Wizard”。
开始垫

你可以选择任何内容, 然后单击”完成”。啊, 它发现了两个泄漏嫌疑人。

垫泄漏嫌疑人

MAT非常强大, 可以分析某些指标。

例如:

  • 最大的对象是顶级消费者
  • 最大的顶级统治者阶层
  • 最大的顶级控制包
  • 线程概述
  • 堆转储概述

如果使用的是其他J2EE应用程序服务器, 则可以使用VisualVM分析堆转储。

你可能还对学习Java内存管理感兴趣。

赞(0)
未经允许不得转载:srcmini » 如何分析WebSphere Java堆转储以进行故障排除

评论 抢沙发

评论前必须登录!