zoukankan      html  css  js  c++  java
  • 性能查找cpu偏高的原因(找到导致偏高的代码类)

    1、如何使用jstack分析线程状态

    https://www.cnblogs.com/silentdoer/p/11736498.html

    2、top命令查看进程下线程信息以及jstack的使用

    https://www.cnblogs.com/heyanan/p/9261695.html

     jstack命令 要装jdk(命令在bin目录里面)    参考: https://www.cnblogs.com/kaibindirver/p/14647110.html

    泽嵩老师教的:

    排查CPU占用过高的线程步骤:
           (1)先使用 【PS aux |grep +关键字】 查找服务进程ID      这里我用 ps -eaf | grep java 才行
           (2)在使用 【top –Hp +进程ID】取得占用cpu高的线程pid
           (3) 使用命令【 printf "%x "+ pid】将10进制的进程换成16进制Tid
           (4)打印线程信息【jstack(1中的ID)| grep 16进制ID +【-C】10(前后10行)】
           例子:ps -ef|grep java
                    top -Hp 3689
                  printf "%x " 3763   
                  jstack 3689 | grep eb3 -C 20

    上面这个只能看java的项目

    要看其他语言的项目用  (还没研究)

    安装perf
    sudo apt-get install linux-tools-common linux-tools-generic linux-tools-`uname -r` // ubuntu
    sudo yum install perf // centos

    进程中哪个函数导致了 CPU 使用率升高,用 perf 分析
    # -g 开启调用关系分析,-p 指定的进程号 21515
    # perf top -g -p 21515

  • 相关阅读:
    转:spring-session
    转:SpringBoot项目如何进行打包部署
    事务的隔离级别
    获取打卡记录接口返回数据情况说明
    批注@SuppressWarnings 的作用
    mybatis-generator eclipse插件 使用方法
    几种常见数据库的driverClassName和url
    ssm 配置多个数据源
    常用正则表达式
    tomcat 配置成服务
  • 原文地址:https://www.cnblogs.com/kaibindirver/p/14679243.html
Copyright © 2011-2022 走看看