zoukankan      html  css  js  c++  java
  • 前言

    最近公司系统老是卡顿,通过top命令查看,发现java的进程占用CPU很高,3200%多。系统曾出现过多次类似问题,这里记录下排查过程,为以后提供参考。顺带补充一下多线程的相关知识。

    排查过程如下:

    1、top                                 #查看java进程占用cpu、内存情况

    2、ps  (ps -mp  java进程ID   -o THREAD,tid,time)           #查看java线程占用cpu、优先级、时间等     

    第二步找出该进程内最耗费CPU的线程,可以使用ps -Lfp pid或者ps -mp pid -o THREAD, tid, time或者top -Hp pid

    3、将可疑线程的tid转成16进制(通过windows自动程序员计算器转换)

    4、jstack -l  java进程ID  >   aa.log                                   #导出java进程堆栈信息

    5、在里面查找16进制的线程id,看对应堆栈代码日志。可以知道这个线程在做什么事情

  • 相关阅读:
    取球问题
    汉字首字母
    上三角
    循环小数
    拓扑排序
    倒水
    equals方法使用技巧
    Java库中的集合
    win10安装Redis方法以及基本配置
    c、c++函数随机
  • 原文地址:https://www.cnblogs.com/aligege/p/7550725.html
Copyright © 2011-2022 走看看