virtualVM是我几年前用过的jdk自带的监控工具,能监控内存,堆栈,线程等粗略的统计信息;
JProfiler是最近用的,比virtualVM要更详细,更专业,基本上覆盖了virtualVM的功能点,还有一些更细致的功能,精确到代码某一行,是个单进程java分析利器。
yourkit没有用过,大体功能和JProflier类似
JVM profiler是个好东西,可以分析spark计算任务的性能,这对我搞大数据后台,分析性能瓶颈很有用,而且这个东西更原始,典型的手动档分析工具。
开源的,里面代码中分析类可以扩展。
这个工具比上面3个要难用得多,也专业得多。
对应的git地址:
https://github.com/uber-common/jvm-profiler
下面引用一下国外的对比分析供参考: