java虚拟机性能监控工具介绍

发表于:2013-9-25 11:12

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:zhuoxue.yll    来源:51Testing软件测试网采编

  1)图2“概述”页显示整个虚拟机主要运行数据的概览。
  2)内存监控
  “内存”页签相当于可视化的jstat命令,用于监视收集器管理的虚拟机内存(java堆和永久代)的变化趋势。
  3)线程监控
  “线程”页签的功能相当于可视化的jstack命令,遇到线程停顿的时候可以时候线程监控进行分析
  2.VisualVM:多合一故障处理工具
  VisualVM它除了运行监视、故障处理外,还提供了很多其他方面的功能。如性能分析(profiling),VisualVM的性能分析功能甚至比起JProfiler专业且收费工具都不会逊色多少,而且VisualVM还有一个很大的优点:不需要被监视的程序基于特殊的Agent运行,因此它对应用程序的实际性能影响很小,使得他可以直接应用在生产环境中。
  1)启动VisualVM
  通过JDK/bin目录下的“jvisualvm”启动VisualVM,可以根据需要给VisualVM装扩展插件,点击“工具”-->“插件”菜单。
  2)生成和浏览堆转储快照
  可以通过以下2种方式生成:
  在“应用程序”窗口中右键单机应用程序节点,然后选择“堆dump”;
  在“应用程序”窗口双击应用晨曦节点打开应用程序标签,然后再“监视”标签中单击“堆dump”。
  生成了dump文件之后,应用程序页签将在堆的应用程序下增加以[heapdump]开头的子节点,并在主页签中打开该转储快照,如图3。


  “摘要”面板可以看到应用程序dump时运行的参数、线程堆栈等信息。
  “类”面板以类为统计口径统计的类的实例数量和容量信息。
  “实例”面板需要通过“类”面板进去,在“类”中选择关系的类后点击,即可在实例中查看此类的实例信息。
  3)分析程序性能
  在Profiler页签中,提供了程序运行期间方法级的CPU执行时间分析及内存烦心,进行profiling肯定会对程序运行性能有比较大的影响,所以一般不在生产环境中使用这项功能。
  选择“cpu”或“内存”,VisualVM会记录这段时间中应用程序执行过的方法。Cpu分析会统计每个方法执行的次数、执行耗时。分词分析则会统计每个方法关联对象数及这些对象所占用的空间,如图4。
  

图4

22/2<12
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号