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占用率在百分之九 ...
随机推荐
- Matlab图像处理(03)-基本概念
概念定义 动态范围:灰度跨跃的值域称为动态范围.上限取决于饱和度,下限取决于噪声. 对比度:一幅图像中最高和最低灰度级间的灰度差. 空间分辨率:图像中可辨别的最小细节的度量.常用度量每单位距离线对数和 ...
- html5--1.8超链接下
html5--1.8超链接下 下面演示链接打开新网友不关闭原网页. 外部网站: 百度 这是用a标签的target属性实现的,用的target="_blank" 这样新出现的页面会另 ...
- 使用 DNSPOD API 实现域名动态解析
0. 简单概述在家里放一个 NAS 服务器,但是宽带的 IP 地址经常改变,一般路由器自带的花生壳域名解析可以解决,如果路由器没有类似功能或者想使用自己的域名,可以尝试使用 DNSPOD API 来实 ...
- 破解 Navicat Premium 12
一.下载 若文件百度云链接失效,请发邮件给博主:1766211120@qq.com 1.安装文件下载 v12.0.11(x64)版本下载地址如下 链接:https://pan.baidu.com/s/ ...
- selenium 经常用到的API
一.webdriver 属性及方法: 1.获取当前页面的 url driver.current_url 2 .获取窗口相关信息 get_window_position() 返回窗口x,y坐标 get_ ...
- BZOJ - 2553 :禁忌(AC自动机+贪心+奇怪的矩阵)
Magic Land上的人们总是提起那个传说:他们的祖先John在那个东方岛屿帮助Koishi与其姐姐Satori最终战平.而后,Koishi恢复了读心的能力…… 如今,在John已经成为传说的时代, ...
- 生成0-42之间的7个不重复的int值
public static void main(String[] args) { //set集合存储不重复无序的值 Set<Integer> set = new HashSet<In ...
- mongdb启动问题
问题:Detected unclean shutdown - /data/db/mongod.lock is not empty. old lock file:/data/db/mongod.lock ...
- poj1456 Supermarket[另类的并查集做法]
1.Supermarket(题目地址) 跟很久以前模拟的打地鼠那题一样,贪心+优先队列.这次换用并查集做法. 还是基于贪心,但这次换一种策略,先选价值最大的, 同时使其尽可能晚的被选上(因为早选会将之 ...
- 四 akka学习 四种多线程的解决方案
http://blog.csdn.net/chenleixing/article/details/44044243 四种多线程的解决方案