zoukankan      html  css  js  c++  java
  • java应用高cpu占用

    一个应用占用CPU很高,除了确实是计算密集型应用之外,通常原因都是出现了死循环

    排查故障如下:

    1、根据top命令,发现PID为28555的Java进程占用CPU高达200%,出现故障

    2、通过ps aux|grep <pid>命令,可以进一步确定是tomcat进程出现了问题
    3、显示线程列表: ps -mp <pid> -o THREAD,tid,time

      找到了耗时最高的线程28802,占用CPU时间快两个小时了!

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

    5、最后打印线程的堆栈信息: jstack pid |grep tid -A 30

    找到出现问题的代码了!
    现在来分析下具体的代码:ShortSocketIO.readBytes(ShortSocketIO.java:106)

  • 相关阅读:
    项目01-nginx模块
    Spark机器学习
    项目01-手机端模块
    Spark内存管理
    Spark Streaming
    Spark SQL
    Spark Job调度
    Spark master节点HA配置
    机器学习
    07、Spark集群的进程管理
  • 原文地址:https://www.cnblogs.com/sellsa/p/8931229.html
Copyright © 2011-2022 走看看