WEB开发网
开发学院软件开发Java 用 verbose GC 分析 IBM WebSphere Portal 的内存... 阅读

用 verbose GC 分析 IBM WebSphere Portal 的内存问题

 2010-06-23 00:00:00 来源:WEB开发网   
核心提示: 这一行显示了每个循环运行的时长,mark 阶段 422 ms,用 verbose GC 分析 IBM WebSphere Portal 的内存问题(4),sweep 阶段 37 ms,compact 阶段 0 ms,JVM 的生命周期JVM 的开始部分一般是一些用来启动进程的可选命令行参数,这些

这一行显示了每个循环运行的时长。mark 阶段 422 ms,sweep 阶段 37 ms,compact 阶段 0 ms。

此外,通过如下两点,我们可以知道这不是一个完整的 GC:

compact 阶段的完成花了 0 ms。

action=1 表明这是在完整 GC 运行之前的一个抢占式的 GC。

最后要研究的一行是:

<GC(177): refs: soft 0 (age >= 32), weak 11, final 7424, phantom 0>

我们必须首先理解这个 GC 不仅管理对象,而且还会维护对实际对象的一个单独的引用对象。这些引用与创建时的四个查询中的一个相关,并且这种相关性在日后不能更改。这四个查询在 mark 阶段按如下顺序标记:

Soft

Weak

Final

Phantom

Soft 和 weak 引用在引用不复存在时可被清除。如果一个 finalizer(Final 查询)与一个 soft 或 weak 引用相关,那么只有当这个 soft 或 weak 引用删除后,这个 finalizer 才会在所运行的下一个 GC pass 上被删除。

以上所述就是在 Java SDK 1.4.2 上的默认 GC 策略内能看到的一些主要行。有了这些基础,让我们接下来探索 JVM 是如何工作的。

JVM 的生命周期

JVM 的开始部分一般是一些用来启动进程的可选命令行参数。这些参数是添加到 WebSphere Application Server 管理控制台内的原生 JVM 参数。

如下是一个基本命令,它会在 Java 进程开始时执行:

Java –Xmx1024M –Xms256M –Xverbosegc programToRun

其中的命令行参数

–Xmx1024M –Xms256M –Xverbosegc

表明启动时如下事情会发生:

heap 最大为 1024 M (–Xmx1024M)

heap 最小为 256 M (–Xms256M)

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:verbose GC 分析

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