工作中遇到最多的几种问题
1、cpu占用率高,大部分都是log4j日志输出太多导致,调高级别或用logback替换
2、fgc太频繁,系统中存在内存泄露,比如:加载几十万行数据到内存等等,用eclipse memory analysis可定位
一、常用排除命令
1、系统监控
top
2、排查cpu占用率高等问题
top -H -p $pid
/usr/java/default/bin/jstack -l $pid> /tmp/jstack_$pid.txt
把线程号转成16进制在jstack_$pid.txt中查找,找到cpu占用率较高的线程
3、排查垃圾回收问题
/usr/java/default/bin/jstat -gcutil $pid 5s
主要关注YGC和FGC频率,结合下一条使用
4、排查内存泄露问题
/usr/java/default/bin/jmap -dump:format=b,file=/tmp/$pid.dmp $pid
用eclipse memory analysis工具查看内存泄露情况
二、其他命令
1、杀进程
lsof -i:$port
kill -9 $pid
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30980622/viewspace-2125640/
,如需转载,请注明出处,否则将追究法律责任。