本文来自blog.idrsolutions.com
1、NetBeans profiler
NetBeans Profiler是一个模块化的添加,为NetBeans IDE提供分析功能,它是一个开源的集成开发环境。NetBeans IDE支持所有Java应用程序类型(Java SE开发(包括JavaFX),Java ME,Web和移动应用,EJB)。这个分析器包括功能如CPU,内存和线程的分析,也提供了基本的JVM监测额外的工具和功能,对那些需要解决内存和性能相关的问题开发商是非常有用的。
2、 JProfiler
JProfiler是以前我在以前的文章中提到,但仍然是一个非常好的Java Profiler结合CPU,内存和线程分析为一体的应用,它可以用来分析性能瓶颈,内存泄漏,CPU负载和解决线程问题并支持局部分析(在同一台机器上的JProfiler软件安装运行应用分析)和远程分析(运行在没有安装JProfiler软件的远程机器上允许Java应用程序的分析。)。
JProfiler是一个商业许可的Java分析工具的开发和EJ技术公司,主要设计用于Java EE和Java SE应用程序。
3、GC Viewer
GC Viewer是一个可以免费下载(从其网站GitHub)开源的工具,它由Java VM 选择使用vmflags -verbose:gc 和 -Xloggc:生产,可用于数据的可视化。GC Viewer可以用来计算垃圾收集相关的性能指标,其中包括吞吐量,累计暂停,最长的暂停和更多。当你想要一个来囤积垃圾的特殊应用程序,通过改变生成大小或设置初始堆大小通常是非常有用的。
4、VisualVM
VisualVM是来自NetBeans平台工具,其体系结构是模块化的,易于通过使用插件进行扩展。
Visual VM允许你们在一个Java虚拟机中运行Java应用程序获取你的详细信息。产生的数据可以生成的Java开发工具和检索工具(JDK),所有的数据和信息在多个Java应用程序可以查看本地和远程快速运行的应用程序。可以保存和获取关于JVM软件数据并保存数据到本地系统,然后查看数据后或与他人分享。
可视化虚拟机可以做处理器分析,内存分析,运行垃圾收集,采取快照和更多。
5、The “Patty” project
The “Patty” project 是一个可以从Source Forge下载的开源项目,旨在为Java1.5.0和更高版本的虚拟机提供分析工具。它通过在运行时保持有重点和针对性的分析,允许用户切换和关闭功能而区别于其他分析器。
目前其还在测试状态,但是一些重要的方法执行,代码覆盖率,可用于分析线程争用开销(内存CPU,等)一个信息通过TCP / IP套接字发送到其他电脑,作为一个易于使用的GUI,可以用来分析堆,可仪器和仪表类应用程序。
6、JRockit
JRockit Java专有的虚拟机是一个最初由Appeal Virtual Machines 和 acquired by BEA Systems 在2002开发,后来通过Sun Microsystems被 Oracle收购。
甲骨文JRockit对于Java SE 是一个完整的解决方案,包括高性能的Java虚拟机,分析,监测和?诊断工具,可用于在Java应用程序的延迟预测。
JRockit的当前迭代是捆绑在一起的一套工具,叫做JRockit的任务控制。这些工具包括:一个用于管理和能够可视化的垃圾收集和其他性能统计控制台。它也可以被用作一个运行时性能分析工具,称为运行时分析器,还可以分析内存问题。
7、Eclipse Memory Analyzer
The Eclipse Memory Analyzer是一个Java堆分析器,可以帮助你发现内存泄漏和减少内存消耗。它更适合作为一个通用工具箱来分析堆转储和大小的计算。它可以用来报告泄漏的问题和内存消耗的反模式。
8、JIP
JIP是一种高性能,低开销的分析器,用Java进行开发而来,目前有BSD经营许可证,可从Source Forge下载。对于开发者使用JIP能打开和关闭探看器,而虚拟机在运行也可以同时过滤掉类和包并控制输出。
9、Profiler4J
Profiler4J是一个专用CPU分析器,对用户友好并支持远程分析。显著的特征包括其基于动态字节码,它没有本地库也需要一个可执行文件。进一步显着的特点是,它的100%基于Java,可以提供图形信息的调用图,调用树,内存监视器,和类列表。支持细粒度配置。它目前在Apache V2.0许可证下发布并能从Source Forge下载