目录

记录排查服务器CPU负载过高

目录

记录排查服务器CPU负载过高

1.top 命令查看cpu占比过高的进程id 这里是 6

https://i-blog.csdnimg.cn/direct/1bd9a22e9a7545fd9e6e2bf8e35090a9.png

  1. 查看进程中占用CPU过高的线程 id 这里是9

top -H -p 6

ps -mp 6 -o THREAD,tid,time

https://i-blog.csdnimg.cn/direct/9825dfb77642445ba5a097165f4ede2f.png

  1. 使用jstack 工具 产看进程的日志 需要线程id转换成16进制 jstack 6 | grep “0x9”

    https://i-blog.csdnimg.cn/direct/910b4d2ea3104961bc0dde3f42a9ceca.png

    4.jstack 6 可以看进程的详细日志

https://i-blog.csdnimg.cn/direct/0adfa867ce9b49989d995bf6d54f3008.png

查看日志发现是 垃圾回收线程一直在跑

服务启动命令的设置的内存太低了 512M 调大后修复

CMD java -Duser.timezone=GMT+08 -Xms1024m -Xmx2048m -Xmn768m -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -jar -Dspring.profiles.active=${profile} /usr/local/tomcat/webapps/admin-service-0.0.1-SNAPSHOT.jar