首页 > 其他 > 详细

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

时间:2019-08-24 10:05:45      阅读:600      评论:0      收藏:0      [点我收藏+]

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

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

技术分享图片

 

2、 ps -mp 25147-o THREAD,tid,time\top -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

 

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

原文:https://www.cnblogs.com/111testing/p/11403549.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!