java cpu占用100%分析
2017-05-12 11:23
387 查看
主要思路是通过ps分析java进程及相应的占用高cpu的java线程,然后看该线程在哪里一直运行占用cpu
1:打印用户、进程id、父进程id、线程id(对于此次很重要)、运行时间、CPU使用率、启动命令并按CPU使用率排序。
ps H -eo user,pid,ppid,tid,time,%cpu,cmd --sort=%cpu
504 29046 1163 24056 00:00:01 0.0 /usr/java/bin/java -Djava.util.logging.config.file=/opt/apache-tomcat-7.0.39/conf/logging.properties -
504 29046 1163 29425 06:14:02 6.7 /usr/java/bin/java -Djava.util.logging.config.file=/opt/apache-tomcat-7.0.39/conf/logging.properties -
504 29046 1163 29429 06:14:37 6.7 /usr/java/bin/java -Djava.util.logging.config.file=/opt/apache-tomcat-7.0.39/conf/logging.properties -
504 29046 1163 29432 06:14:45 6.7 /usr/java/bin/java -Djava.util.logging.config.file=/opt/apache-tomcat-7.0.39/conf/logging.properties -
504 29046 1163 16577 06:13:47 8.9 /usr/java/bin/java -Djava.util.logging.config.file=/opt/apache-tomcat-7.0.39/conf/logging.properties -
504 29046 1163 24967 06:14:13 9.4 /usr/java/bin/java -Djava.util.logging.config.file=/opt/apache-tomcat-7.0.39/conf/logging.properties -
504 29046 1163 19293 06:13:13 31.3 /usr/java/bin/java -Djava.util.logging.config.file=/opt/apache-tomcat-7.0.39/conf/logging.properties -
2:讲线程ID转换为16进制,
printf "%x\n" 19293 ==> 4b5d
3:使用jstack分析该线程
jstack 29046 | grep 4b5d -A 40
步骤1也可以通过先执行top,再ps来分析 ps -mp 29046 -o THREAD,tid,time
1:打印用户、进程id、父进程id、线程id(对于此次很重要)、运行时间、CPU使用率、启动命令并按CPU使用率排序。
ps H -eo user,pid,ppid,tid,time,%cpu,cmd --sort=%cpu
504 29046 1163 24056 00:00:01 0.0 /usr/java/bin/java -Djava.util.logging.config.file=/opt/apache-tomcat-7.0.39/conf/logging.properties -
504 29046 1163 29425 06:14:02 6.7 /usr/java/bin/java -Djava.util.logging.config.file=/opt/apache-tomcat-7.0.39/conf/logging.properties -
504 29046 1163 29429 06:14:37 6.7 /usr/java/bin/java -Djava.util.logging.config.file=/opt/apache-tomcat-7.0.39/conf/logging.properties -
504 29046 1163 29432 06:14:45 6.7 /usr/java/bin/java -Djava.util.logging.config.file=/opt/apache-tomcat-7.0.39/conf/logging.properties -
504 29046 1163 16577 06:13:47 8.9 /usr/java/bin/java -Djava.util.logging.config.file=/opt/apache-tomcat-7.0.39/conf/logging.properties -
504 29046 1163 24967 06:14:13 9.4 /usr/java/bin/java -Djava.util.logging.config.file=/opt/apache-tomcat-7.0.39/conf/logging.properties -
504 29046 1163 19293 06:13:13 31.3 /usr/java/bin/java -Djava.util.logging.config.file=/opt/apache-tomcat-7.0.39/conf/logging.properties -
2:讲线程ID转换为16进制,
printf "%x\n" 19293 ==> 4b5d
3:使用jstack分析该线程
jstack 29046 | grep 4b5d -A 40
步骤1也可以通过先执行top,再ps来分析 ps -mp 29046 -o THREAD,tid,time
相关文章推荐
- JAVA应用CPU占用100%|内存泄漏分析总结
- java应用CPU占用100%内存泄漏分析总结(转载)
- Java应用CPU占用100%原因分析
- HashMap-死锁导致cpu占用100%分析
- 分析java程序中cpu占用过高的线程
- windows下java项目cpu占用较高原因分析
- 分析java程序中cpu占用过高的线程
- 分析JAVA应用CPU占用过高的问题
- IIS应用程序池w3wp.exe CPU 占用100% 分析软件,找出具体有问题的ASP程序URL
- 分析java程序中cpu占用过高的线程
- jstack分析cpu占用100%(转)
- windows下java项目cpu占用较高原因分析
- Linux下Java进程占用CPU超较高原因分析
- Linux下JAVA线程占用CPU高的分析方法
- Linux jstack分析cpu占用100%
- DBA案例分析:如何解决CPU占用100%的问题
- win7下CPU资源占用100%的原因分析及对策
- 利用jstack分析JAVA应用CPU占用过高的问题
- Linux下,Java进程占用CPU超100%
- jstack分析cpu占用100%