Linux 定位某个jvm进程占用CPU最高的线程
博客专区 > snecker 的博客 > 博客详情
Linux 定位某个jvm进程占用CPU最高的线程
snecker 发表于6个月前
Linux 定位某个jvm进程占用CPU最高的线程
  • 发表于 6个月前
  • 阅读 9
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

命令

#jvm进程ID
pid=2791
# 找出前三位的占用CPU最高的线程tid
tids=$( printf '%x\n' `top -b -n1 -p $pid -H -o %CPU |sed -n '8,10p'|awk '{print $1}'` )
# 合并线程tid 用 '|' 连接起来,方便 grep
tids=`echo $tids|sed  's/\s/\|/g'`
# 线程栈信息
jstack -l $pid |grep -E "${tids}" -A 20 -B 20

如此,便可确定一个进程CPU占用大致在哪些地方

标签: linux jvm jstack
共有 人打赏支持
粉丝 2
博文 38
码字总数 9666
×
snecker
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: