Java应用线上问题排查思路
时间:2020-05-31 21:30:23
收藏:0
阅读:55
CPU利用率飙升
1、定位cpu利用率最高的进程
top
2、定位使用cpu最高的线程
top -Hp pid
3、线程id转化为16进制
printf ‘0x%x‘ tid
4、找到线程堆栈
jstack pid | grep tid
发现使用cpu最高的是业务线程
1、io wait 解决方法: [1]: https://blog.csdn.net/lonyness/article/details/82628988 "记一次线上服务cpu占用率超过100%的问题排查"
等待内核态锁,如synchronized
1、查看阻塞线程堆栈
jstack -l pid | grep BLOCKED
2、dump线程栈,分析线程持锁情况
GC
1、可能是survivor区太小,对象过早进入老年代
线程池异常
1、对高RT接口进行限流 2、优化数据库
原文:https://www.cnblogs.com/yyml181231/p/13021376.html
评论(0)