快速业务通道

通过JVM查看关于Apache Geronimo的统计信息 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-15
示例中的第一行指示发生了一次垃圾收集。收集之前堆上使用了 70,333KB,收集之后使用了 65,666KB。第一行还指示总共有 98,896KB 的可用空 间。最后,指出垃圾收集花费的时间,也即应用程序中止的时间量。第二行指示 相同的信息,但表示一个完整的垃圾收集。完整的垃圾收集涉及 JVM 对堆上所有 的对象进行检验,包括经历了许多代、在部分垃圾收集上不会被分析的对象。

有关更详细的信息,请使用 -XX:+PrintGCDetails 和 - XX:+PrintGCTimeStamps 选项。这些选项提供关于堆上对象的不同代的详细信息 。

对于看上去更为有趣的统计信息,可以使用专门的工具。开放源码的工具和商 业工具都可以使用。还可以使用 Sun 提供的一些用于与 HotSpot 一起使用的工 具。jvmstat 项目包含几个用于监视 JVM 统计信息的工具,包括一个叫做 Visual Garbage Collector 或 visualgc 的图形工具, 它使用起来相对简单。 您需要 Java 5 或更高版本来运行 jvmstat,尽管它可以附加和监视 1.4.2 或更 高版本的 JVM。只需下载和解压即可。将它添加到您的路径,即可准备运行。启 动了 Java 进程时,请使用 jps 工具来通过键入 jps 标识其 JVM。它向您提供 一个正在运行的 Java 进程的列表,这些进程以其 JVM 作为 ID。然后使用您想 监视的进程的 ID 调用 visualgc。jvmstat 发行版包括一个用于调用 visualgc 的 shell 脚本。如果安装了 cygwin 这样的工具,就可以在 *nix 或 Microsoft® Windows® 上调用 visualgc 了。此外,也可以按以下方式 调用它:

java -Xbootclasspath/p:%JAVA_HOME%\lib\tools.jar -jar % JVMSTAT_HOME%\jars\visualgc.jar 316

其中 JAVA_HOME 环境变量指定安装 JDK 的位置,而 JVMSTAT_HOME 指示安装 jvmstat 包的位置 。该行末尾的 316 是您想监视的 JVM 的 ID。该 jvmstat 包还包括一个 jstat 工具。它提供在 visualgc 中看到的绝大部分相同信息,只不过将其作为文本输 出。这对收集统计信息而言至关重要,然后可以将这些统计信息拖入另一个程序 ,以对其进行深入分析、生成有关它的报告,等等。本文集中讨论使用 visualgc 对这些统计信息进行可视化。

清单 1 提供一个短程序,您可以运行来测 试使用 jvmstat 进行监视。

清单 1. 测试用 jvmstat 进行监视

StatGen.java  import java.util.ArrayList; import java.util.List; public class StatGen {   static final int MAX_BLOCK = 8*1024*100;    public static void main(String[] args) {     try{        int numLoops = 1;       if (args.length >  0){          numLoops = Integer.parseInt(args[0]);       }       System.out.println ("#loops="+numLoops);       List<long[]> list  = new ArrayList<long[]>(numLoops);       for (int  i=0;i<numLoops;i++){         int sz = (int)  (Math.random()*MAX_BLOCK);         long[] garbage = new  long[sz];         if (sz % 5 == 0){            list.add(garbage);         }          System.out.println("Sleeping 0.5s");          Thread.sleep(500);       }        System.out.println("Done");     } catch (Throwable t) {        t.printStackTrace();     }      System.exit(0);   } }

通过JVM查看关于Apache Geronimo的统计信息(3)

时间:2011-08-27 IBM Michael Galpin

这是一个简单的程序。它使用了泛型,所以

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号