性能文章>使用 FastThread 以及 GCEasy 分别针对线程dump文件以及GC日志文件进行离线分析>

使用 FastThread 以及 GCEasy 分别针对线程dump文件以及GC日志文件进行离线分析原创

3年前
452404

概述

FastThread 以及 GCEasy分别针对线程dump文件以及GC日志文件的离线分析工作,可快速直观的定位到相关的性能问题。

前置准备

针对目标进程分别生成线程dump文件以及GC日志文件

使用jstack -l pid > {dumpFileName}来生成线程dump文件
添加启动参数 -XX:+PrintGCDateStamps -XX:+PrintGCDetails -Xloggc:./gclogs来生成gc日志文件

FastThread实践

1.借助XPocket来使用FastThread

image.png

2. 使用 “analyze <ThreadDumpFileAbsolutePath>” 来分析线程dump文件

image 1.png

3. 进入分析报告详情页,内容如下所示

image 2.png

可以很明显的看到有线程创建过多的问题
image 3.png

复杂的死锁信息
image 4.png

高cpu使用的线程
image 5.png

更多的线程问题用户可以自行尝试并查看

GCEasy实践

1.借助XPocket来使用GCEasy

image 6.png

2. 使用 “analyze <GcFileAbsolutePath>” 来分析gc日志文件

3. 进入分析报告详情页,内容如下所示

可以看到频繁gc的问题
image 7.png

更多的线程问题用户可以自行尝试并查看

点赞收藏
小邋遢

持续进步

请先登录,感受更多精彩内容
快去登录吧,你将获得
  • 浏览更多精彩评论
  • 和开发者讨论交流,共同进步
4
0