java热点方法 性能分析

本文主要介绍eprofiler,eprofiler是一款开源的IDEA性能分析工具。能够在程序动态运行过程中不影响程序运行,达到对程序进行CPU热点方法的性能分析。

原文地址:http://codec.fun/2019/01/07/eprofiler%E6%80%A7%E8%83%BD%E5%88%86%E6%9E%90/

开源地址:https://gitee.com/zifeihan/eprofiler

支持版本:目前仅支持MAC操作系统,后期打算覆盖Linux和windows

安装方式:在IDEA插件中选择本地安装即可

运行原理:项目在启动过程中在jvm参数上加载了指定的agent

实现原理:内部agent采用c++实现,和IDEA的火焰图性能分析插件类似

需求反馈:由于自身能力不够,特将其开源。如果有感兴趣的伙伴可以联系我,一起将其完善。

功能增强:

1.打算在性能分析堆栈树加入代码跳转,点击相关的热点方法即可进入项目中的代码

2.目前是实时分析的,后期会加入项目运行结束查看项目启动过程中的所有分析结果的聚合态

3.支持导出分析结果为火焰图

1.介绍

java热点方法 性能分析

2.性能分析日志

java热点方法 性能分析

 

java热点方法 性能分析

由于改日志是动态输出的,排在最前面的(百分比最高的)是当前项目消耗最高的性能点。默认5秒进行刷新输出,当点击具体的堆栈时会暂定刷新,点击刷新按钮会重新刷新分析结果日志。

java热点方法 性能分析

下面我开始访问项目空页面:

java热点方法 性能分析

下面数据为强制刷新空页面后的数据

java热点方法 性能分析