内容简介:每次提起性能测试,都是开始于脚本、压力,然后各种监控,最后的最后就是分析。每次到了最后一个环境,所有大牛都说是一个很复杂的过程一两句话说不清楚。让人陷入了无尽的遐想~~~~~。今天,测试就告诉你如何找到Java消耗CPU的进程是怎么被找到的。当遇见CPU性能飙升到接近100的时候,首先需要进入对应的服务器,然后通过如下一连串的动作找到最耗资源的罪魁祸首。
每次提起性能测试,都是开始于脚本、压力,然后各种监控,最后的最后就是分析。每次到了最后一个环境,所有大牛都说是一个很复杂的过程一两句话说不清楚。让人陷入了无尽的遐想~~~~~。
今天,测试就告诉你如何找到 Java 消耗CPU的进程是怎么被找到的。
传统的手段
当遇见CPU性能飙升到接近100的时候,首先需要进入对应的服务器,然后通过如下一连串的动作找到最耗资源的罪魁祸首。
top发现最好是的进程
在 shell 界面中,输入top,找到最消耗CPU的那个Java进程。记录下PID号码。
然后通过:
命令查看对应PID进程下的线程,找到最耗资源的线程的PID。将其通过shell转成十六进制:
应用jstack针对上面耗时的线程进行分析
然后打开xxx.tmp文件,搜索PID(十六进制)号码,下面的堆栈就是这个线程打出来的。排查问题就可以从这些堆栈信息开整找到问题。
一个一劳永逸的工具
show-busy-java-threads用于快速排查Java的CPU性能问题(top us值过高),自动查出运行的Java进程中消耗CPU多的线程,并打印出其线程栈,从而确定导致性能问题的方法调用。
GitHub地址:https://github.com/oldratlee/useful-scripts
在服务器端,克隆项目: git clone git://github.com/oldratlee/useful-scripts.git
然后就可以看到了show-busy-jaa-threads工具了。其中,该Github仓库有一个release发布分支,里面包含的都是功能稳定的脚本,建议使用的时候切换到该分支。方法如下:
进入userful-scripts目录后,输入 ./show-busy-java-threads
就可以使用这个 工具 进行上述消耗CPU的优化分析了。其他show-busy-java-threads工具的用法如下:
其实优化是性能测试的根本目标,找到问题后分析问题才是关键,通过各种手段找到更详细的问题,找到更多的数据和RD一起分析。
测者的性能手册:
测者的性能测试手册:一分钟掌握LoadRunner关联函数应该放在那
测者的性能测试手册:故障诊断工具Glassbox在Tomcat上应用
测者的性能测试手册:Linux Loadrunner Generator的安装和配置
测者的性能测试手册:Fiddler抓取websocket的包
测者的性能测试手册:Moco 作为MockServer快速入门
|
|
长按关注V社北京 测试 丨 技术 丨 面试 丨 DevOps 关注V社北京,关注测试,添加巨蜥小程序获取全量精品技术文章 |
关注我
每天进步一点点
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 【Android】性能优化:电量消耗统计
- 性能优化:一个 Flink 参数节省了 50% 的 CPU 消耗
- 优化 DeFi 合约利息计算 gas 消耗
- MySQL 导致 CPU 消耗过大,如何优化
- 为什么系统调用会消耗较多资源
- iOS 电量消耗改善:一招套路及相关姿势
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Web Security Testing Cookbook
Paco Hope、Ben Walther / O'Reilly Media / 2008-10-24 / USD 39.99
Among the tests you perform on web applications, security testing is perhaps the most important, yet it's often the most neglected. The recipes in the Web Security Testing Cookbook demonstrate how dev......一起来看看 《Web Security Testing Cookbook》 这本书的介绍吧!