解决 java线上问题_Java应用线上问题排查思路

论坛 期权论坛 编程之家     
选择匿名的用户   2021-5-31 03:46   14   0

标签:查看 业务 jstack article top cpu tac print 16进制

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、优化数据库

Java应用线上问题排查思路

标签:查看 业务 jstack article top cpu tac print 16进制

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP