WEB开发网
开发学院软件开发Java WebSphere Application Server 中的内存泄漏检测与... 阅读

WebSphere Application Server 中的内存泄漏检测与分析: 第 1 部分:内存泄漏概述

 2010-01-15 00:00:00 来源:WEB开发网   
核心提示: 使用 WebSphere Application Server V6.1,可以将用于 Java 工具的 Memory Dump Diagnostic (版本 1.0)与 IBM Support Assistant 工具(版本 3.0)一起打包,WebSphere Application Serv

使用 WebSphere Application Server V6.1,可以将用于 Java 工具的 Memory Dump Diagnostic (版本 1.0)与 IBM Support Assistant 工具(版本 3.0)一起打包,这是一种独立于 WebSpherer Application Server 单独安装的系统管理员独立工具,该工具可以安装在任何计算机上,只要可以将堆转储转换到该计算机上进行脱机分析即可。

在下载 IBM Support Assistant 之后,可以利用 Updater 机制单独添加 Memory Dump Diagnostic for Java:在 IBM Support Assistant 中,选择Updater 视图中的 New Products and Tools => Common Component and Tools(还请确保已经安装了 WebSphere Application Server V6.0 或 V5.0 产品插件)。

相对于以前版本(版本 0.97a),MDD4J(版本 1.0)的这一新版本的特性具有许多与可伸缩性有关的改进,并且支持 64 位堆转储。

下面的示例显示了对于简单内存泄漏 Java 应用程序的内存泄漏分析结果。这一示例应用程序将字符串对象泄漏到一个静态 HashMap 中。轻量级泄漏检测能够确定早期泄漏的出现,并自动产生适当的堆转储。然后,使用 Memory Dump Diagnostic for Java Version 1.0 中的比较分析对这些转储进行脱机分析。显示内存泄漏疑点的分析结构显示在图 2、图 3 和图 4 中。

图 2. Memory Dump Diagnostic for Java 分析结果中的内存泄漏疑点。

WebSphere Application Server 中的内存泄漏检测与分析: 第 1 部分:内存泄漏概述

图 3. 在 Memory Dump Diagnostic for Java 中浏览可疑数据结构

WebSphere Application Server 中的内存泄漏检测与分析: 第 1 部分:内存泄漏概述

图 4. Memory Dump Diagnostic for Java 分析的内存占用空间分析

WebSphere Application Server 中的内存泄漏检测与分析: 第 1 部分:内存泄漏概述

结束语

使用 WebSphere Application Server V6.1,系统管理员能够在其生产环境中接收关于内存泄漏的早期通知,而不必使用字节代码插入或任何附加代理。已经设计了轻量级内存泄漏检测,其可以将对性能的影响降至最低,并提供在适当时间自动生成堆转储的功能,以确保正确的分析结果。

可以使用 Memory Dump Diagnostic for Java (MDD4J) 以脱机方式分析手动生成或者在内存泄漏检测的帮助下生成的堆转储。这一工具可以帮助系统管理员将问题限制到到适当的组件,开发人员可以在其计算机上很容易地重现分析结果。MDD4J 为开发人员和问题检测顾问提供了一种工具,用以确定泄漏怀疑对象,浏览堆和所属权链,以确定其代码中的什么数据结构正在泄漏。

这一技术非常有助于诊断 Java 堆内存泄漏并对其进行分析,既可用于良好的系统测试过程,也可用于生产系统。

上一页  2 3 4 5 6 7 

Tags:WebSphere Application Server

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接