一,线上机器CPU 100%怎么排查定位解决?
1,定位耗费CPU的进程 top -c,显示进程列表,输入P按照使用率排序显示 2,定位耗费CPU的线程 top -Hp 453,数字是进程ID,然后输入P,按照CPU使用率排序显示 3,定位哪段代码导致CPU使用率过高 printf "%x\n" 1232 ,把线程的PID转换成16进制 jstack 343 | grep '0x41e8' -C5 -color 使用jstack打印进程的堆栈信息,而且通过grep 那个线程的16进制PID,找到那个线程关联的东西,这个时候可以再打印出的代码里看到是那个类的哪个方法导致这个cpu 100 % 的问题 二,磁盘空间快满了怎么办? df -h 先查看,磁盘空间使用的情况 find / -size +1000M |xargs ls -lh,找到大于1000M的文件 或者du -h >fs_du.log,看各个目录的占用空间大小