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占用率在百分之九 ...
随机推荐
- wamp server 安装后 Apache80端口占用
提示:Your port 80 is actually used by :Server: Microsoft-HTTPAPI/2.0 解决方案:计算机->右键管理->服务和应用程序-> ...
- MVC常见错误记录
1 找到了多个与名为“Home”的控制器匹配的类型.如果为此请求(“{controller}/{action}/{id}”)提供服务的路由没有指定命名空间来搜索匹配此请求的 根项目下的RouteCon ...
- 强制浏览器下载PDF文件
if(empty($filename)) { return FALSE; } // http headers header('Content-Type: application-x/force-dow ...
- Composer基础应用1
先唠叨唠叨一些琐碎的事.本人最早从事.Net开发,后来处于好奇慢慢转到了php,因为.net从一早就使用了命名空间(反正从我使用就存在这玩意了),所以在转php时很自然的就使用了命名空间,但是在使用过 ...
- linux网络编程 ntohs, ntohl, htons,htonl inet_aton等详解
ntohs =net to host short int 16位 htons=host to net short int 16位 ntohs =net to host long int 32位 hto ...
- P2060 [HNOI2006]马步距离
P2060 [HNOI2006]马步距离 数据到百万级别,明显爆搜不行,剪枝也没法剪.先打表.发现小数据内步数比较受位置关系影响,但数据一大就不影响了.大概搜了一个20*20的表把赋值语句打出来.判断 ...
- bzoj 3527: [Zjoi2014]力 快速傅里叶变换 FFT
题目大意: 给出n个数\(q_i\)定义 \[f_i = \sum_{i<j}{\frac{q_iq_j}{(i-j)^2}} - \sum_{i>j}\frac{q_iq_j}{(i-j ...
- bzoj 4503 两个串 快速傅里叶变换FFT
题目大意: 给定两个\((length \leq 10^5)\)的字符串,问第二个串在第一个串中出现了多少次.并且第二个串中含有单字符通配符. 题解: 首先我们从kmp的角度去考虑 这道题从字符串数据 ...
- poj 1269 Intersecting Lines——叉积求直线交点坐标
题目:http://poj.org/problem?id=1269 相关知识: 叉积求面积:https://www.cnblogs.com/xiexinxinlove/p/3708147.html什么 ...
- CF 504 E —— Misha and LCP on Tree —— 树剖+后缀数组
题目:http://codeforces.com/contest/504/problem/E 快速查询LCP,可以用后缀数组,但树上的字符串不是一个序列: 所以考虑转化成序列—— dfs 序! 普通的 ...