一种一种CPU占用过高的故障定位分析方法占用过高的故障定位分析方法
1.前言前言
CPU占用过高是LINUX服务器出现常见的一种故障,也是程序员线上排查错误必须掌握的技能,我们经常需要找出相应的应用程序并快速地定位程序中的具体代码行数,本文将介
绍一种CPU占用过高的一种处理思路,文中采用四步法进行定位,从应用程序的进程到具体应用程序的名字再到应用程序的线程最后定位到具体应用程序的行数,从整体到局部,最
后定位到具体代码,为读者提供了一种排查故障的思路和方法。
2. 测试类编写测试类编写
编写测试类,模拟占用CPU过高的程序,具体程序代码如下:
public class TopTest {
public static void main(String[] args) {
while (true) {
System.out.println(new java.util.Random().nextInt(777778888));
}
}
}
maven打包后上传至linux服务器中
运行该JAVA程序
nohup java -jar JavaDemo-1.0-SNAPSHOT.jar >/tmp/TopTest.log 2>&1 ;
监控日志文件:
[root@bigdata3 tmp]# tail -f TopTest.log
具体内容如下:
3. 故障定位方法故障定位方法
3.1 定位定位CPU占比最高的占比最高的PID
先用先用top命令找出命令找出CPU占比最高的占比最高的PID
命令行输入命令行输入 top。其内容如下:。其内容如下:
评论0