load过高排查

5 篇文章 0 订阅

jstack

线程的运行情况、线程的状态

load过高的排查

  1. jps -mlv 列出所有jvm进程,选择要查的那个,记下pid
  2. top -H -p pid 查出哪个线程占用cpu过高,取该线程的threadid
  3. threadid转成16进制tid  linux命令行下 >  printf "%x" num
  4. jstack tid | grep -A 100 取该线程栈信息的后100行,然后分析信息

 

下面说明一下dump的信息

"pool-18-thread-10" prio=10 tid=0x00007f673807e000 nid=0x24d8 waiting on condition [0x00007f671b971000]

 

  1. waiting on condition   等待某个条件的发生,具体的原因可以查看stack的信息,一般是网络的io,出现大量的waiting on condition,可能是带宽不够,或是网络存在异常
  2. waitint for monitor entry  进入同步块内的线程
  3. Object.wait  阻塞在同步块的线程
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值