• 性能测试分析过程(二)cpu 使用率过高的分析方法


    Linux 系统下 cpu 使用率过高的分析方法

    1、通过 top 命令可以很明显查看出哪个进程耗cpu比较高

    2、 ps -mp 25147-o THREAD,tid,time op -Hp pid找到耗时最高的线程

    或者使用:使用 top -H -p <pid> 查看进程里面的线程占用情况

    或者在top命令之后使用:shift+h  查看哪个进程程消耗最高

    3,将需要的线程ID转换为16进制格式

     ,

    打印堆栈信息
    sudo jstack 25147|grep 6268

     

      jstack 3889 > /tmp/aa.txt,将该进程的全部堆栈信息放入临时文件aa.txt里面

     总结: 

    1. 查找进程

    top查看进程占用资源情况

    明显看出java的那个进程占用过高cpu.

    2.查找线程

    使用top -H -p <pid>查看线程占用情况

    3.查找java的堆栈信息

    将线程id转换成十六进制

    #printf %x 15664

    #3d30

    然后再使用jstack查询线程的堆栈信息

    语法:jstack <pid> | grep -a 线程id(十六进制)

    jstack <pid> | grep -a 3d30 

    这样就找出了有问题的代码了。

     pid :进程id                tid :线程 id

  • 相关阅读:
    线段树小结
    线段树 区间合并
    线段树
    线段树离散化+区间修改
    线段树模板

    geatpy
    基于Anaconda 安装 geatpy 和 tensorflow
    Python 求“元组、列表、字典、数组和矩阵”的大小
    np.array()和np.mat()区别
  • 原文地址:https://www.cnblogs.com/111testing/p/11403549.html
Copyright © 2020-2023  润新知