线上环境CPU使用飙升
2020-10-10 本文已影响0人
我菠菜今天就是要为所欲为
故事开始:
线上部署服务3个小时后,收到服务器报警,CPU使用率达到90%。
问题定位:
登录线上服务器后
1.使用top命令列出正在运行的进程,显示CPU占用率最高的为JAVA进程
2.使用top -Hp pid找出使用cpu最高的线程。
3.使用printf "%x\n" 线程id将线程id转成16进制
4.再用jstack pid|grep 线程id查看线程信息,可以发现是引起cpu增加的语句。
至此,发现此问题中引发cpu增加的原因是GC。
针对gc引发的问题,使用jstat -gcutil pid 5000查看gc信息,发现总体YGC没有变化,FGC不断增加,分析为JVM配置不合理导致。
后期我们调整了jvm的参数,处理了这个问题。