java – 如何解释分析结果?

我使用NetBeans和VisualVM运行内存Profiler,并收到结果,但是没有一个线索如何分析其结果,我研究了这个 article,但它没有教导或给出如何解释结果的线索.

我还发现了这个article关于Netbeans 4的解释结果,但是我正在寻找一个有更多细节的文章,或者是一种解释以下结果来学习的方法.

解决方法

在您的问题中粘贴的遥测图中没有太多的信息传达.

传达的是什么

>你的程序被监视了大约3分钟
>您的堆利用率略低于200mb(没什么特别的)
>你有大约90个线程(这必须是一个应用服务器)
>您在GC(正常)中平均花费少于5%

我打赌在内存显示器中传送的锯齿图案是您的程序启动 – 否则为什么在最后一分钟左右的事情似乎能够平滑其他.在您的问题显示的3分钟内您的申请是否在任何负载下?

作为一个起点,当您的程序正在做一些重大的改进时,我会看看您的程序在GC(GC中的相对时间)中花费了多少时间.如果超过5%,您可以考虑调整堆或进一步挖掘,以确定发生分配的位置.

接下来我会寻找一个瓶颈.了解您的应用程序大部分时间在哪里,看看您是否可以以某种方式优化该代码.

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...