zoukankan      html  css  js  c++  java
  • java面试-生产环境出现CPU占用过高,谈谈你的分析思路和定位

     思路:结合Linux和JDK命令一起分析

    1、top命令找出CPU占比最高的进程

    2、ps -ef|grep java|grep -v grep 或者jps -l进一步定位,得知是怎样一个后台程序惹事

    3、定位到具体线程:ps -mp 进程编号 -o THREAD,tid,time 

    ps -mp 4618 -o THREAD,tid,time
    
    -m:显示所有线程
    -p pid:进程使用CPU的时间
    -o:用户自定义格式  

    4、将需要的线程ID转换为16进制格式:printf "%x " 有问题的线程id

    printf "%x
    " 4619  

    5、jstack 进程ID|grep tid(16进制线程小写英文)-A60

     jstack 4618 | grep 120b -A60  

     

  • 相关阅读:
    stl测试
    noip2017逛公园
    比赛
    莫队算法
    noi.ac 第五场第六场
    重排DL
    bzoj2870
    异象石(就是sdio宝藏那题)
    Genius ACM
    模板复习
  • 原文地址:https://www.cnblogs.com/wjh123/p/11146231.html
Copyright © 2011-2022 走看看