Java进程占用内存过高,排查解决方法
最近收到邮件报警,说内存使作率达到84%。如下图:

解决方法:
A:可能是代码原因导致的问题:
1、使用命令:top 查看当前进程的状态

2、从上图可以看到PID:916的java进程占用内存较大。定位线程问题(通过命令查看PID 为25894 进程的线程情况),命令:# ps p 916 -L -o pcpu,pmem,pid,tid,time,tname,cmd

由此可以看到这PID:916的进程产生了很多线程。接下来就可以通过jstack查看内存使用的堆栈。
3、查看内存使用的堆栈:在这里我们挑选了TID=934的线程进行分析,首先需要将934这个id转换为16进制。需输入如下命令,
printf "%x\n" 9731

4、将PID为916的堆栈信息打印到jstack.log中,命令:jstack -l 916 > jstack.log

5、
查看堆栈信息文件,命令:vim jstack.log
在进行搜索TID为2603的相关信息。如图:

6、分析
可以看到这个线程状态为:RUNNABLE。是正在运行状态的
另外其它的大部分线程状态为:WAITING。通过查看文件分析 看到大量 Java Thread State。
说明它在等待另一个条件的发生,来把自己唤醒,或者干脆它是调用了 sleep(N)。
此时线程状态大致为以下几种:
java.lang.Thread.State: WAITING (parking):一直等那个条件发生;
java.lang.Thread.State: TIMED_WAITING (parking或sleeping):定时的,那个条件不到来,也将定时唤醒自己。
7.代码优化:将文件发送给开发。优化下线程
B:可能是其他原因导致的问题:
1、使用ps命令:ps -ef | grep java | grep -v grep
查看当前java进程列表
root May13 ? :: /usr/lib/jvm/java/bin/java -Djava.util.logging.config.file=/data/apache-tomcat-9.0./conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize= -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK= -Dignore.endorsed.dirs= -classpath /data/apache-tomcat-9.0./bin/bootstrap.jar:/data/apache-tomcat-9.0./bin/tomcat-juli.jar -Dcatalina.base=/data/apache-tomcat-9.0. -Dcatalina.home=/data/apache-tomcat-9.0. -Djava.io.tmpdir=/data/apache-tomcat-9.0./temp org.apache.catalina.startup.Bootstrap start
root May13 ? :: /usr/lib/jvm/java/bin/java -Djava.util.logging.config.file=/data/apache-tomcat-9.0./conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize= -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK= -Dignore.endorsed.dirs= -classpath /data/apache-tomcat-9.0./bin/bootstrap.jar:/data/apache-tomcat-9.0./bin/tomcat-juli.jar -Dcatalina.base=/data/apache-tomcat-9.0. -Dcatalina.home=/data/apache-tomcat-9.0. -Djava.io.tmpdir=/data/apache-tomcat-9.0./temp org.apache.catalina.startup.Bootstrap start
root Mar05 ? :: /usr/lib/jvm/java/bin/java -Djava.util.logging.config.file=/data/apache-tomcat-9.0./conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize= -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK= -Dignore.endorsed.dirs= -classpath /data/apache-tomcat-9.0./bin/bootstrap.jar:/data/apache-tomcat-9.0./bin/tomcat-juli.jar -Dcatalina.base=/data/apache-tomcat-9.0. -Dcatalina.home=/data/apache-tomcat-9.0. -Djava.io.tmpdir=/data/apache-tomcat-9.0./temp org.apache.catalina.startup.Bootstrap start
root Mar08 ? :: /usr/lib/jvm/java/bin/java -Djava.util.logging.config.file=/data/apache-tomcat-9.0./conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize= -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK= -Dignore.endorsed.dirs= -classpath /data/apache-tomcat-9.0./bin/bootstrap.jar:/data/apache-tomcat-9.0./bin/tomcat-juli.jar -Dcatalina.base=/data/apache-tomcat-9.0. -Dcatalina.home=/data/apache-tomcat-9.0. -Djava.io.tmpdir=/data/apache-tomcat-9.0./temp org.apache.catalina.startup.Bootstrap start
root May09 ? :: /usr/lib/jvm/java/bin/java -Djava.util.logging.config.file=/data/apache-tomcat-9.0./conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize= -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK= -Dignore.endorsed.dirs= -classpath /data/apache-tomcat-9.0./bin/bootstrap.jar:/data/apache-tomcat-9.0./bin/tomcat-juli.jar -Dcatalina.base=/data/apache-tomcat-9.0. -Dcatalina.home=/data/apache-tomcat-9.0. -Djava.io.tmpdir=/data/apache-tomcat-9.0./temp org.apache.catalina.startup.Bootstrap start
root May09 ? :: /usr/lib/jvm/java/bin/java -Djava.util.logging.config.file=/data/apache-tomcat-9.0./conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize= -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK= -Dignore.endorsed.dirs= -classpath /data/apache-tomcat-9.0./bin/bootstrap.jar:/data/apache-tomcat-9.0./bin/tomcat-juli.jar -Dcatalina.base=/data/apache-tomcat-9.0. -Dcatalina.home=/data/apache-tomcat-9.0. -Djava.io.tmpdir=/data/apache-tomcat-9.0./temp org.apache.catalina.startup.Bootstrap start
root May27 ? :: /usr/lib/jvm/java/bin/java -Djava.util.logging.config.file=/data/apache-tomcat-9.0./conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize= -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK= -Dignore.endorsed.dirs= -classpath /data/apache-tomcat-9.0./bin/bootstrap.jar:/data/apache-tomcat-9.0./bin/tomcat-juli.jar -Dcatalina.base=/data/apache-tomcat-9.0. -Dcatalina.home=/data/apache-tomcat-9.0. -Djava.io.tmpdir=/data/apache-tomcat-9.0./temp org.apache.catalina.startup.Bootstrap start
root May27 ? :: /usr/lib/jvm/java/bin/java -Djava.util.logging.config.file=/data/apache-tomcat-9.0./conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize= -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK= -Dignore.endorsed.dirs= -classpath /data/apache-tomcat-9.0./bin/bootstrap.jar:/data/apache-tomcat-9.0./bin/tomcat-juli.jar -Dcatalina.base=/data/apache-tomcat-9.0. -Dcatalina.home=/data/apache-tomcat-9.0. -Djava.io.tmpdir=/data/apache-tomcat-9.0./temp org.apache.catalina.startup.Bootstrap start
由上图所示,可以看到java进程是Tomcat的启动进程,开启多个Tomcat启动进程,并且是同一个端口。由此,可以判断,是因为关闭Tomcat服务时,java进程没有自动关闭,导致内存没有释放。
2、使用lsof命令:lsof | grep java |grep -v grep
查看当前进程的运行状态
java 834 root cwd DIR 252,1 4096 393217 /root
java 834 root rtd DIR 252,1 4096 2 /
java 834 root txt REG 252,1 5128 917742 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/bin/java
java 834 root mem REG 252,1 262896 269147 /usr/lib64/libjpeg.so.62.0.0
java 834 root mem REG 252,1 41400 792676 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libjavajpeg.so
java 834 root mem REG 252,1 644072 266782 /usr/lib64/libfreetype.so.6.3.22
java 834 root mem REG 252,1 349032 792667 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libfontmanager.so
java 834 root mem REG 252,1 29072 792665 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libawt_headless.so
java 834 root mem REG 252,1 715224 792664 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libawt.so
java 834 root mem REG 252,1 99174448 269459 /usr/lib/locale/locale-archive
java 834 root mem REG 252,1 111440 656920 /lib64/libresolv-2.12.so
java 834 root mem REG 252,1 27896 655389 /lib64/libnss_dns-2.12.so
.................... java 1294 root cwd DIR 252,1 4096 393217 /root
java 1294 root rtd DIR 252,1 4096 2 /
java 1294 root txt REG 252,1 5128 917742 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/bin/java
java 1294 root mem REG 252,1 99174448 269459 /usr/lib/locale/locale-archive
java 1294 root mem REG 252,1 262896 269147 /usr/lib64/libjpeg.so.62.0.0
java 1294 root mem REG 252,1 41400 792676 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libjavajpeg.so
java 1294 root mem REG 252,1 644072 266782 /usr/lib64/libfreetype.so.6.3.22
java 1294 root mem REG 252,1 349032 792667 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libfontmanager.so
java 1294 root mem REG 252,1 29072 792665 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libawt_headless.so
java 1294 root mem REG 252,1 715224 792664 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libawt.so
java 1294 root mem REG 252,1 111440 656920 /lib64/libresolv-2.12.so
java 1294 root mem REG 252,1 27896 655389 /lib64/libnss_dns-2.12.so
java 1294 root mem REG 252,1 11920 131997 /var/cache/fontconfig/beeeeb3dfe132a8a0633a017c99ce0c0-le64.cache-3
java 1294 root mem REG 252,1 3203275 792699 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/charsets.jar
java 1294 root mem REG 252,1 3509512 792747 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/resources.jar
java 1294 root mem REG 252,1 477712 655369 /lib64/libfreeblpriv3.so
java 1294 root mem REG 252,1 248720 655363 /lib64/libnspr4.so
java 1294 root mem REG 252,1 18720 655370 /lib64/libplc4.so
java 1294 root mem REG 252,1 14528 655377 /lib64/libplds4.so
java 1294 root mem REG 252,1 191928 266783 /usr/lib64/libnssutil3.so
java 1294 root mem REG 252,1 1337168 268947 /usr/lib64/libnss3.so
............ java 2085 root cwd DIR 252,17 4096 2621998 /data/apache-tomcat-9.0.13/bin
java 2085 root rtd DIR 252,1 4096 2 /
java 2085 root txt REG 252,1 5128 917742 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/bin/java
java 2085 root mem REG 252,1 99174448 269459 /usr/lib/locale/locale-archive
java 2085 root mem REG 252,1 111440 656920 /lib64/libresolv-2.12.so
java 2085 root mem REG 252,1 27896 655389 /lib64/libnss_dns-2.12.so
java 2085 root mem REG 252,1 3203275 792699 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/charsets.jar
java 2085 root mem REG 252,1 3509512 792747 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/resources.jar
java 2085 root mem REG 252,1 477712 655369 /lib64/libfreeblpriv3.so
java 2085 root mem REG 252,1 248720 655363 /lib64/libnspr4.so
java 2085 root mem REG 252,1 18720 655370 /lib64/libplc4.so
java 2085 root mem REG 252,1 14528 655377 /lib64/libplds4.so
java 2085 root mem REG 252,1 191928 266783 /usr/lib64/libnssutil3.so
java 2085 root mem REG 252,1 1337168 268947 /usr/lib64/libnss3.so
java 2085 root mem REG 252,1 185368 266802 /usr/lib64/libsmime3.so
java 2085 root mem REG 252,1 336472 269139 /usr/lib64/libssl3.so
java 2085 root mem REG 252,1 45720 792689 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libsunec.so
java 2085 root mem REG 252,1 36088 792682 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libmanagement.so
java 2085 root mem REG 252,1 98280 792684 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libnet.so
java 2085 root mem REG 252,1 73416 792685 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libnio.so
java 2085 root mem REG 252,17 34918 2622001 /data/apache-tomcat-9.0.13/bin/bootstrap.jar
java 2085 root mem REG 252,1 73280094 792748 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/rt.jar
java 2085 root mem REG 252,1 298029 792717 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/ext/sunjce_provider.jar
............ java 12808 root cwd DIR 252,1 4096 393217 /root
java 12808 root rtd DIR 252,1 4096 2 /
java 12808 root txt REG 252,1 5128 917742 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/bin/java
java 12808 root mem REG 252,1 99174448 269459 /usr/lib/locale/locale-archive
java 12808 root mem REG 252,1 111440 656920 /lib64/libresolv-2.12.so
java 12808 root mem REG 252,1 27896 655389 /lib64/libnss_dns-2.12.so
java 12808 root mem REG 252,1 3509512 792747 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/resources.jar
java 12808 root mem REG 252,1 477712 655369 /lib64/libfreeblpriv3.so
java 12808 root mem REG 252,1 248720 655363 /lib64/libnspr4.so
java 12808 root mem REG 252,1 18720 655370 /lib64/libplc4.so
java 12808 root mem REG 252,1 3203275 792699 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/charsets.jar
java 12808 root mem REG 252,1 14528 655377 /lib64/libplds4.so
java 12808 root mem REG 252,1 191928 266783 /usr/lib64/libnssutil3.so
java 12808 root mem REG 252,1 1337168 268947 /usr/lib64/libnss3.so
java 12808 root mem REG 252,1 185368 266802 /usr/lib64/libsmime3.so
java 12808 root mem REG 252,1 336472 269139 /usr/lib64/libssl3.so
java 12808 root mem REG 252,1 45720 792689 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libsunec.so
java 12808 root mem REG 252,1 36088 792682 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libmanagement.so
java 12808 root mem REG 252,1 98280 792684 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libnet.so
java 12808 root mem REG 252,1 73416 792685 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libnio.so
.......... java 19392 root cwd DIR 252,1 4096 393217 /root
java 19392 root rtd DIR 252,1 4096 2 /
java 19392 root txt REG 252,1 5128 917742 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/bin/java
java 19392 root mem REG 252,1 262896 269147 /usr/lib64/libjpeg.so.62.0.0
java 19392 root mem REG 252,1 41400 792676 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libjavajpeg.so
java 19392 root mem REG 252,1 644072 266782 /usr/lib64/libfreetype.so.6.3.22
java 19392 root mem REG 252,1 349032 792667 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libfontmanager.so
java 19392 root mem REG 252,1 29072 792665 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libawt_headless.so
java 19392 root mem REG 252,1 715224 792664 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libawt.so
java 19392 root mem REG 252,1 99174448 269459 /usr/lib/locale/locale-archive
java 19392 root mem REG 252,1 111440 656920 /lib64/libresolv-2.12.so
java 19392 root mem REG 252,1 27896 655389 /lib64/libnss_dns-2.12.so
java 19392 root mem REG 252,1 11920 131997 /var/cache/fontconfig/beeeeb3dfe132a8a0633a017c99ce0c0-le64.cache-3
java 19392 root mem REG 252,1 3203275 792699 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/charsets.jar
java 19392 root mem REG 252,1 3509512 792747 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/resources.jar
java 19392 root mem REG 252,1 477712 655369 /lib64/libfreeblpriv3.so
java 19392 root mem REG 252,1 248720 655363 /lib64/libnspr4.so
java 19392 root mem REG 252,1 18720 655370 /lib64/libplc4.so
java 19392 root mem REG 252,1 14528 655377 /lib64/libplds4.so
java 19392 root mem REG 252,1 191928 266783 /usr/lib64/libnssutil3.so
........... java 19838 root cwd DIR 252,1 4096 393217 /root
java 19838 root rtd DIR 252,1 4096 2 /
java 19838 root txt REG 252,1 5128 917742 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/bin/java
java 19838 root mem REG 252,1 99174448 269459 /usr/lib/locale/locale-archive
java 19838 root mem REG 252,1 262896 269147 /usr/lib64/libjpeg.so.62.0.0
java 19838 root mem REG 252,1 41400 792676 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libjavajpeg.so
java 19838 root mem REG 252,1 644072 266782 /usr/lib64/libfreetype.so.6.3.22
java 19838 root mem REG 252,1 349032 792667 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libfontmanager.so
java 19838 root mem REG 252,1 29072 792665 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libawt_headless.so
java 19838 root mem REG 252,1 715224 792664 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libawt.so
java 19838 root mem REG 252,1 11920 131997 /var/cache/fontconfig/beeeeb3dfe132a8a0633a017c99ce0c0-le64.cache-3
java 19838 root mem REG 252,1 111440 656920 /lib64/libresolv-2.12.so
java 19838 root mem REG 252,1 27896 655389 /lib64/libnss_dns-2.12.so
java 19838 root mem REG 252,1 3203275 792699 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/charsets.jar
java 19838 root mem REG 252,1 3509512 792747 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/resources.jar
java 19838 root mem REG 252,1 477712 655369 /lib64/libfreeblpriv3.so
java 19838 root mem REG 252,1 248720 655363 /lib64/libnspr4.so
java 19838 root mem REG 252,1 18720 655370 /lib64/libplc4.so
java 19838 root mem REG 252,1 14528 655377 /lib64/libplds4.so
......... java 21543 root cwd DIR 252,1 4096 393217 /root
java 21543 root rtd DIR 252,1 4096 2 /
java 21543 root txt REG 252,1 5128 917742 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/bin/java
java 21543 root mem REG 252,1 262896 269147 /usr/lib64/libjpeg.so.62.0.0
java 21543 root mem REG 252,1 41400 792676 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libjavajpeg.so
java 21543 root mem REG 252,1 644072 266782 /usr/lib64/libfreetype.so.6.3.22
java 21543 root mem REG 252,1 349032 792667 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libfontmanager.so
java 21543 root mem REG 252,1 29072 792665 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libawt_headless.so
java 21543 root mem REG 252,1 715224 792664 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libawt.so
java 21543 root mem REG 252,1 111440 656920 /lib64/libresolv-2.12.so
java 21543 root mem REG 252,1 27896 655389 /lib64/libnss_dns-2.12.so
java 21543 root mem REG 252,1 3509512 792747 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/resources.jar
java 21543 root mem REG 252,1 3203275 792699 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/charsets.jar
java 21543 root mem REG 252,1 11920 131997 /var/cache/fontconfig/beeeeb3dfe132a8a0633a017c99ce0c0-le64.cache-3
java 21543 root mem REG 252,1 477712 655369 /lib64/libfreeblpriv3.so
java 21543 root mem REG 252,1 248720 655363 /lib64/libnspr4.so
java 21543 root mem REG 252,1 18720 655370 /lib64/libplc4.so
java 21543 root mem REG 252,1 14528 655377 /lib64/libplds4.so
java 21543 root mem REG 252,1 191928 266783 /usr/lib64/libnssutil3.so
........ java 22750 root cwd DIR 252,1 4096 393217 /root
java 22750 root rtd DIR 252,1 4096 2 /
java 22750 root txt REG 252,1 5128 917742 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/bin/java
java 22750 root mem REG 252,1 262896 269147 /usr/lib64/libjpeg.so.62.0.0
java 22750 root mem REG 252,1 41400 792676 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libjavajpeg.so
java 22750 root mem REG 252,1 644072 266782 /usr/lib64/libfreetype.so.6.3.22
java 22750 root mem REG 252,1 349032 792667 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libfontmanager.so
java 22750 root mem REG 252,1 29072 792665 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libawt_headless.so
java 22750 root mem REG 252,1 715224 792664 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libawt.so
java 22750 root mem REG 252,1 111440 656920 /lib64/libresolv-2.12.so
java 22750 root mem REG 252,1 27896 655389 /lib64/libnss_dns-2.12.so
java 22750 root mem REG 252,1 11920 131997 /var/cache/fontconfig/beeeeb3dfe132a8a0633a017c99ce0c0-le64.cache-3
java 22750 root mem REG 252,1 3203275 792699 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/charsets.jar
java 22750 root mem REG 252,1 3509512 792747 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/resources.jar
java 22750 root mem REG 252,1 477712 655369 /lib64/libfreeblpriv3.so
java 22750 root mem REG 252,1 248720 655363 /lib64/libnspr4.so
........ java 29458 root cwd DIR 252,1 4096 393217 /root
java 29458 root rtd DIR 252,1 4096 2 /
java 29458 root txt REG 252,1 5128 917742 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/bin/java
java 29458 root mem REG 252,1 99174448 269459 /usr/lib/locale/locale-archive
java 29458 root mem REG 252,1 262896 269147 /usr/lib64/libjpeg.so.62.0.0
java 29458 root mem REG 252,1 41400 792676 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libjavajpeg.so
java 29458 root mem REG 252,1 644072 266782 /usr/lib64/libfreetype.so.6.3.22
java 29458 root mem REG 252,1 349032 792667 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libfontmanager.so
java 29458 root mem REG 252,1 29072 792665 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libawt_headless.so
java 29458 root mem REG 252,1 715224 792664 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el6_10.x86_64/jre/lib/amd64/libawt.so
java 29458 root mem REG 252,1 11920 131997 /var/cache/fontconfig/beeeeb3dfe132a8a0633a017c99ce0c0-le64.cache-3
............
java 29458 root 235u IPv4 34489969 0t0 TCP localhost:57037->localhost:mysql (ESTABLISHED)
java 29458 root 236u IPv4 34489971 0t0 TCP localhost:57036->localhost:mysql (ESTABLISHED)
java 29458 root 237u IPv4 34489970 0t0 TCP localhost:57040->localhost:mysql (ESTABLISHED)
java 29458 root 238u IPv4 34489982 0t0 TCP localhost:57042->localhost:mysql (ESTABLISHED)
java 29458 root 239u IPv4 34489983 0t0 TCP localhost:57043->localhost:mysql (ESTABLISHED)
java 29458 root 240u IPv4 34489984 0t0 TCP localhost:57046->localhost:mysql (ESTABLISHED)
通过上图所示:正常运行的Tomcat状态应为PID:29458的java进程
3、杀掉其他的java的进程
kill -9 PID
4、然后查看主机监控,果然内存使用率下降,网站运行正常

Java进程占用内存过高,排查解决方法的更多相关文章
- 万答#3,MGR最佳配置参考,PFS里的监测指标要全开吗,mysqld进程占用内存过高怎么排查
GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 问题1,有推荐的MGR运行最佳配置参考吗 在「3306π」社区广州站5月22日的分享会上,万里数据库CTO娄帅给出了他建议 ...
- Unity3D占用内存太大的解决方法
原地址:http://www.cnblogs.com/88999660/archive/2013/03/15/2961663.html 最近网友通过网站搜索Unity3D在手机及其他平台下占用内存太大 ...
- (转)Unity3D占用内存太大的解决方法
自:http://www.cnblogs.com/88999660/archive/2013/03/15/2961663.html 最近网友通过网站搜索Unity3D在手机及其他平台下占用内存太大. ...
- Linux排查Java程序占用CPU很高的解决办法
Java的工具集相当强大,学习成本也很低,处理线上问题时,jstack这个工具就比微软的windbg,好学好用很多,3步找出占用CPU很高的源所在.而windbg反人类的各种命令,实在不敢恭维. 故意 ...
- w3wp.exe进程占用内存过高解决方法
解决CPU占用过多: 1.在IIS中对每个网站进行单独的应用程序池配置.即互相之间不影响. 2.设置应用程序池的CPU监视,不超过25%(服务器为4CPU),每分钟刷新,超过限制时关闭. 根据w3wp ...
- Java 进程占用内存过多,幕后元凶原来是线程太多
那天中午吃饭,一个同事说,那个项目组的人快气死我了,程序有问题,早晨在群里@了他们,到中午才回消息,然后竟然还说他们的程序没有问题,是我们这边调用的太频繁了. 简直想笑. 背景说明 我们当前这个系统和 ...
- linux下查找java进程占用CPU过高原因
1. 查找进程 top查看进程占用资源情况 明显看出java的两个进程22714,12406占用过高cpu. 2.查找线程 使用top -H -p <pid>查看线程占用情况 3. ...
- Apache服务器httpd.exe进程占用cpu超过50%的解决方法
httpd.exe进程占用cpu超过50%,关闭掉Apache服务,cpu应用率立刻下降到0. 重新启动Apache又出现占用cpu高的情况. 原因是:httpd.exe和防火墙配置有冲突. 解决 ...
- SQL Server 占用CPU较高的解决方法
触发原因:月底系统结账的时候对ERP的操作较多,有用户反馈系统之间的数据传输很久没有同步.随即到服务器上查看,没有发现有程序导致的问题,看了一下CPU的使用率,发现SQL Server占用率在百分之九 ...
随机推荐
- ORACEL 常用命令
ORACLE EBS操作某一个FORM界面,或者后台数据库操作某一个表时发现一直出于"假死"状态,可能是该表被某一用户锁定,导致其他用户无法继续操作 代码如下: --锁表查询SQL ...
- 《程序员代码面试指南》第七章 位运算 在其他数都出现k 次的数组中找到只出现一次的数
题目 在其他数都出现k 次的数组中找到只出现一次的数 java 代码 package com.lizhouwei.chapter7; /** * @Description: 在其他数都出现k 次的数组 ...
- [egret+pomelo]实时游戏杂记(3)
[egret+pomelo]学习笔记(1) [egret+pomelo]学习笔记(2) [egret+pomelo]学习笔记(3) 服务端的请求流程走完了一遍,下面就该看一下,在目前的服务端中,各服务 ...
- 《avascript 高级程序设计(第三版)》 ---第二章 在HTML中使用Javascript
本章主要讲解了,怎么在HTML中使用: 1.<script src=""></script> 属性:defer="defer" 表示脚本 ...
- C++ 构造函数+析构函数
3-2 构造函数的调用 Time Limit: 1000MS Memory limit: 65536K 题目描述 通过本题目的练习可以掌握构造函数和析构函数的调用: 创建类A:类中仅包含构造函数和析构 ...
- java.lang.NoSuchMethodException: cn.pb.bean.Category.<init>()报错
代码如下: package cn.pb.bean; import java.util.ArrayList;import java.util.List; /** * 分类的实体类 */public cl ...
- Vue cli项目开启Gzip
目录 安装 compression-webpack-plugin 更改配置文件 服务器开启gzip功能 安装 compression-webpack-plugin 建议安装v1.1.11版本,最新版本 ...
- python基础知识-列表,元组,字典
列表(list) 赋值方法: l = [11,45,67,34,89,23] l = list() 列表的方法: #!/usr/bin/env python class list(object): & ...
- web攻击之零:WEB攻击及防御技术汇总
一.XSS攻击 [介绍] xss攻击是跨站脚本攻击,例如在表单中提交含有可执行的javascript的内容文本,如果服务器端没有过滤或转义这些脚本,而这些脚本由通过内容的形式发布到了页面上,这个时候如 ...
- 深入理解和探究Java类加载机制
深入理解和探究Java类加载机制---- 1.java.lang.ClassLoader类介绍 java.lang.ClassLoader类的基本职责就是根据一个指定的类的名称,找到或者生成其对应的字 ...