背景:

运行测试程序后,top命令发现某个进程(pid)占用cpu达到100%。

 
查看哪个线程占用最多资源:

ps mp pid -o THREAD,tid,命令查看这个进程下面的所有线程占用情况。

发现线程324占用最多。

使用jstack进行跟踪:

jstack pid 进行查看输出到临时文件

jstack 324> test

将刚刚发现占用cpu最多的线程id(324)换算成16进制,324==》144

查看jstack 生成的文件:

下面可以看出是哪行代码导致,查看那行代码发现有死循环。跟踪解决完毕。

上面是查看cpu占用情况,举一反三,其他的相关资源分析方法应该是类似的。

这种查起问题来很有成就感,跟我们牛牛的开发学的一招以后大家也可以用起来~~~

后记:
测试关注的东西很多,点到面,再面到点,而开发们在技术上了解会的分析方法很多,我们在发现bug后不是直接丢给开发,fix后外围回归,而是向开发请教分析方法,得到“渔”,开发也很乐于教给我们,这样我们以后遇到类似问题就能直接进行分析,这样才能不断既提高充实自己,提高效率,并且会有很有成就感,这是一件非常快乐的事情。

from: http://testing.etao.com/node/615

Linux jstack分析cpu占用100%的更多相关文章

  1. linux下模拟CPU占用100%小程序

    在做一个测试时,需要模拟服务器CPU占用满的情况,在查阅相关资料后,发现网上程序不太好用, 原文在这:http://www.2cto.com/os/201304/202068.html 优化后如下: ...

  2. w3wp.exe(IIS ) CPU 占用 100% 的常见原因及解决办法

    对于IIS 管理员来说,经常会碰到 Web 服务器 CPU 占用 100% 的情况,以下是个人的日常工作总结和一些解决办法,主要用来剖析 w3wp.exe(IIS )  占用 CPU 100% 的一些 ...

  3. magento 由于Httpd进程增多,导致CPU占用100%问题

    由于Httpd进程增多,导致CPU占用100%问题 magento for version 2.2.3 前些天一直导致CPU无法控制的增多问题. 根据报错我设置了如下内容: [Mysql]mysql. ...

  4. VPS/云主机CPU占用100%故障排查

    VPS/云主机CPU占用100%故障排查 方法/步骤 通常情况下云主机/VPS的CPU一般不会占用100%,内存资源也不会占完.若您的服务器经常CPU资源100%,可以打开任务管理器,查看是哪个进程引 ...

  5. mysql cpu 100% 满 优化方案 解决MySQL CPU占用100%的经验总结

    下面是一些经验 供参考 解决MySQL CPU占用100%的经验总结 - karl_han的专栏 - CSDN博客 https://blog.csdn.net/karl_han/article/det ...

  6. 解决一个 MySQL 服务器进程 CPU 占用 100%解决一个 MySQL 服务器进程 CPU 占用 100%的技术笔记》[转]

    转载地址:http://bbs.chinaunix.net/archiver/tid-1823500.html 解决一个 MySQL 服务器进程 CPU 占用 100%解决一个 MySQL 服务器进程 ...

  7. Web API的CPU占用100%

    我用Web API做了一个网站,网站很简单,请求就是几个普通的参数,提交到服务器后,在Web API里做一下参数验证,然后去访问Redis里的TIME命令,最后把TIME命令返回的结果计算出yyyy- ...

  8. paip.navicat form mysql导入文本文件时CPU占用100%的解决

    paip.navicat form  mysql导入文本文件时CPU占用100%的解决 作者Attilax ,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:h ...

  9. w3wp.exe(IIS ) CPU 占用 100% 的常见原因

    引起 w3wp.exe(IIS ) Cpu 占用 100% 的常见原因如下: 1. Web 访问量大,从而服务器压力大而引起的 2. 动态页面(.aspx)的程序逻辑复杂程度 3. 页面程序中有死循环 ...

随机推荐

  1. Untrusted 游戏 通关攻略

    这个游戏还不错,用了两个晚上的时间通过并写下解法.这个游戏通过修改JS代码来通关的游戏.很考验玩家的解决问题能力,同时也有一定的可玩性. 游戏地址 http://alexnisnevich.githu ...

  2. vue 阅读一【待完结】

    初步方案:从第一个commit开始到到最近的commit,从代码的大纲开始到细节,利用思维导图. 注意: 源码阅读是一件比较枯燥的事情,要有别的东西一起做,源码只是偶尔看看,经常发呆的话,非常浪费时间 ...

  3. 每日英语:Prosecutors Wrap Up Case Against Bo

    Prosecutors wrapped up their case against Bo Xilai on Sunday, sparring with the defiant former Commu ...

  4. 李洪强iOS开发之极光推送JPush

    李洪强iOS开发之极光推送JPush

  5. 随记MySQL的时间差函数(TIMESTAMPDIFF、DATEDIFF)、日期转换计算函数(date_add、day、date_format、str_to_date)

    时间差函数(TIMESTAMPDIFF.DATEDIFF) 需要用MySQL计算时间差,使用TIMESTAMPDIFF.DATEDIFF,记录一下实验结果 select datediff(now(), ...

  6. vue2.0 代码功能片段

    1.代码片段截取 checkAll: function(flag){ this.checkAllFlag = flag; this.productList.forEach(function(value ...

  7. LTDC/DMA2D—液晶显示

    本章参考资料:<STM32F4xx 参考手册 2>.<STM32F4xx 规格书>.库帮助文档<stm32f4xx_dsp_stdperiph_lib_um.chm> ...

  8. text-align 在ie7与ie8下的区别

      在某元素上应用text-align:center; 在ie7下解释为,该元素内的元素和文字都居中. 在ie8下解释为,该元素内的文字居中. 例如:<div style="borde ...

  9. iOS UIWebView与WKWebView使用详解

    一.整体介绍 UIWebView自iOS2就有,WKWebView从iOS8才有,毫无疑问WKWebView将逐步取代笨重的UIWebView.通过简单的测试即可发现UIWebView占用过多内存,且 ...

  10. MyEclipse9.0激活步骤

    MyEclipse 9.0的激活机制 1.破解公钥(确保MyEclipse没有开启,否则失败!)   解压破解包中的myeclipse9_keygen_activator.zip,复制publicKe ...