文章插图
打开JAVA线程dump文件
文章插图
打开JAVA线程dump文件之后,我们就可以利用上面我们讲过的 top -Hp 19235 命令和 printf将线程ID转换成16进制 printf “0x%xn” 19235 , 拿到最占CPU的线程ID之后 , 来这个JAVA线程dump文件里面搜索这个线程,就知道这个线程在干嘛了 , 卡在了哪一行 。
grep ‘java.lang.Thread.State’ /tmp/9739_jvm_thread.dump | wc -l统计总共有多少线程 , 线程总数 。线程如果太多肯定是有问题的 , 至于多少线程算多我也不知道 。观察呗,就跟袁隆平老爷子一样,你没事多下地观察一下水稻是怎么生长的就知道了,经验就是这么来的 。你们项目平时正常运行的时候,你上去统计一下,等过一段时间你们项目真出问题了你跟平时的经验对比一下就小葱拌豆腐一清二白了 。
文章插图
grep “java.lang.Thread.State” /tmp/20210713_thread.log |sort| uniq -c | sort -nrgrep “java.lang.Thread.State”
/tmp/20210713_vhlthread.log |sort| uniq -c | sort -nr 使用这个命令看下所有的线程都处于什么状态
文章插图
上面介绍的命令使用起来毕竟太原始,效率太低了,不是人干的事 。区分一个程序猿到底猴子还是人 , 主要看他会不会使用工具 。介绍俩个分析线程快照的工具:
- fastThread
文章插图
分析结果
文章插图
文章插图
文章插图
fastthread的具体使用教程,你们自己网上Google吧 。
- 国内HeapDump社区的XSheepdog在线工具网站为 https://www.perfma.com/ , https://console.heapdump.cn/
文章插图
文章插图
文章插图
更多用法需要你自己动手去挖掘 。
如果您觉得文章对您有用 , 请转发、评论谢谢~
原文链接:
https://www.tuicool.com/articles/Ej6neiE
【JAVA应用生产问题排查步骤】
推荐阅读
- u盘文件夹变成应用程序怎么恢复win10 U盘文件夹变成应用程序怎么办
- 使用Jarboot排查Java进程CPU占用过高问题
- Java调用外部REST请求的几种方式
- 13个JavaScript 一行程序,让你看起来像个专家
- JavaScript 数组操作必须熟练运用的 10 个方法
- Java程序员找工作的难点在哪里?找工作对症下药,注意这3点
- 计算机系统软件和应用软件的区别是什么
- 实时内容理解算法在淘宝直播间的应用与落地
- 太阳能发电设备的原理及应用
- Java,处理工具类,BeanUtils工具包,map对象转成JavaBean