Oracle Solaris Studio Performance Analyzer 和 NetBeans Profiler两个java应用性能分析工具的功能和使用介绍。
jdk自带的工具有:
命令行工具比如jstack,jps,jmap,jstats
gui工具比如Jconsole,visualvm等。
那么我们为什么还要使用性能分析工具呢?主要的问题是:
jdk自带的工具都是达成了性能监控的目的,这些监控工具收集的数据粒度都较粗,对java应用程序的性能没有没有什么影响,可以在生产环境上使用,而这些工具无法解决的问题是如果出现了性能问题,我们怎么排查和分析问题发生的原因呢?
这个时候本书该章介绍的主角——两个性能分析工具就出场了,这些工具能够主动收集更多的数据,分析性能问题背后的原因,为下一步性能调优提供基础。
可以额外实现的功能有:
1.分析内存泄露点。
2.分析垃圾回收策略。
3.分析堆转储信息。
4.分析线程锁信息。
以后若遇到类似的需求可以使用这两个工具,尤其是NetBeans Profiler可以跨平台,使用简单。