在做性能调优的时候,我们通常会借助一些性能分析工具(比如perf,DTrace)分析系统资源的使用情况,比如CPU、内存等,但这些工具分析的结果通常是文本形式,不够直观,不便于快速定位系统瓶颈。Brendan Gregg开发了一种可视化的性能分析工具–火焰图,这种工具通过分析包含stack traces的profile数据,以可视化的形式展现出来,通过它可以快速准确地定位到热点代码。
本文内容涵盖了如何理解火焰图、如何生成火焰图、火焰图有哪些缺陷、如何解决这些缺陷、以及Java混合模式火焰图的具体生成步骤和具体实例。