文章预览
↓推荐关注↓ 导读 分享作者在使用Arthas火焰图工具进行Java应用性能分析和优化的经验。 看到标题是不是很多人在想是不是标题党了,是也不是👻~,请听我细细道来~ 我们的应用代码是用Java写的,因此使用的火焰图工具是Arthas,下面的分析也是基于此。 Arthas火焰图使用 官方文档: https://arthas.aliyun.com/doc/profiler.html 启动火焰图分析 $ profiler start Started [cpu] profiling 停止 $ profiler stop --format flamegraph profiler output file: /tmp/test/arthas-output/ 20211207 -111550. html OK 如上所示默认会生成一个html的火焰图文件,指定输出格式相关可参考官方文档。 火焰图示例 火焰图横轴代表CPU的占用时间,横轴越宽代表CPU占用越多,鼠标移动上去也可以看到这个方法究竟占用了多少CPU。 纵轴代表调用栈,火焰越高代表调用栈越深。 其中绿色部分代表Java代码,黄色部分代表JVM C++代
………………………………