最近收到邮件报警,说内存使作率达到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进程占用内存过高,排查解决方法的更多相关文章

  1. 万答#3,MGR最佳配置参考,PFS里的监测指标要全开吗,mysqld进程占用内存过高怎么排查

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 问题1,有推荐的MGR运行最佳配置参考吗 在「3306π」社区广州站5月22日的分享会上,万里数据库CTO娄帅给出了他建议 ...

  2. Unity3D占用内存太大的解决方法

    原地址:http://www.cnblogs.com/88999660/archive/2013/03/15/2961663.html 最近网友通过网站搜索Unity3D在手机及其他平台下占用内存太大 ...

  3. (转)Unity3D占用内存太大的解决方法

    自:http://www.cnblogs.com/88999660/archive/2013/03/15/2961663.html 最近网友通过网站搜索Unity3D在手机及其他平台下占用内存太大.  ...

  4. Linux排查Java程序占用CPU很高的解决办法

    Java的工具集相当强大,学习成本也很低,处理线上问题时,jstack这个工具就比微软的windbg,好学好用很多,3步找出占用CPU很高的源所在.而windbg反人类的各种命令,实在不敢恭维. 故意 ...

  5. w3wp.exe进程占用内存过高解决方法

    解决CPU占用过多: 1.在IIS中对每个网站进行单独的应用程序池配置.即互相之间不影响. 2.设置应用程序池的CPU监视,不超过25%(服务器为4CPU),每分钟刷新,超过限制时关闭. 根据w3wp ...

  6. Java 进程占用内存过多,幕后元凶原来是线程太多

    那天中午吃饭,一个同事说,那个项目组的人快气死我了,程序有问题,早晨在群里@了他们,到中午才回消息,然后竟然还说他们的程序没有问题,是我们这边调用的太频繁了. 简直想笑. 背景说明 我们当前这个系统和 ...

  7. linux下查找java进程占用CPU过高原因

    1. 查找进程 top查看进程占用资源情况 明显看出java的两个进程22714,12406占用过高cpu.   2.查找线程 使用top -H -p <pid>查看线程占用情况   3. ...

  8. Apache服务器httpd.exe进程占用cpu超过50%的解决方法

    httpd.exe进程占用cpu超过50%,关闭掉Apache服务,cpu应用率立刻下降到0.  重新启动Apache又出现占用cpu高的情况.  原因是:httpd.exe和防火墙配置有冲突. 解决 ...

  9. SQL Server 占用CPU较高的解决方法

    触发原因:月底系统结账的时候对ERP的操作较多,有用户反馈系统之间的数据传输很久没有同步.随即到服务器上查看,没有发现有程序导致的问题,看了一下CPU的使用率,发现SQL Server占用率在百分之九 ...

随机推荐

  1. 在Linux下搭建我的世界(Minecraft)服务器

    最近薅了百度云双12的羊毛,1核2G一年150.突然想起以前大学整个宿舍通宵开黑挖泥土的岁月,所以刚好趁着这台服务器,打算自己搭建一个我的世界服务器,重温一下以前的感觉. 超详细Linux搭建Java ...

  2. [BZOJ 1095] [ZJOI 2007]Hide 捉迷藏

    在BZ上连续MLE n次后,终于A了. 自己YY的动态点分写法,思路还是很清楚的,但是比较卡内存. 用到了MAP导致复杂度比其他的代码多了一个log,看来需要去借鉴一下别人怎么写的. updata i ...

  3. ActiveMQ持久化机制

    用户注册成功后发短信提醒 同步http 异步mq JMS中两种通讯模式: 发布订阅   一对多  topic   去过消费者集群的话 都会消费 消息队列   点对点 queue  去过消费者集群的话 ...

  4. Spring Boot2.0之注解方式启动Springmvc

    回顾下springmvc原理图: DispatcherServlet是Spring MVC的核心,每当应用接受一个HTTP请求,由DispatcherServlet负责将请求分发给应用的其他组件. 在 ...

  5. BZOJ 1677 [Usaco2005 Jan]Sumsets 求和:dp 无限背包 / 递推【2的幂次方之和】

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1677 题意: 给定n(n <= 10^6),将n分解为2的幂次方之和,问你有多少种方 ...

  6. Centos6.4 相关配置记录

    1.手动开启eth0网卡 在虚拟机里装完CentOS6.4之后,使用NAT模式,输入ifconfig发现没有IP地址,查找了一下资料,原来是: 在CentOS 6.x的版本中,默认网卡是不开启的,需要 ...

  7. 剑指offer24:判断一个二叉树的后序遍历序列是否为二叉搜索树的后序遍历序列

    public static boolean isBSTSequence(int[] s,int l, int r) { if (s == null || r <= 0) return false ...

  8. python读文件出现中文乱码

    更新: 一个解释更详细和全面的博文:https://www.cnblogs.com/zhangqigao/p/6496172.html 最近开始处理中文文本,读取文件有时候会出现乱码.原因:编码和解码 ...

  9. bzoj 4278 Tasowanie 后缀数组+贪心

    题目大意 给定两个数字串A和B,通过将A和B进行二路归并得到一个新的数字串T,请找到字典序最小的T.\(len \leq 200000\) 题解 我们从归并排序的角度去想,每次把两者之一较小的取出来 ...

  10. 【Lintcode】112.Remove Duplicates from Sorted List

    题目: Given a sorted linked list, delete all duplicates such that each element appear only once. Examp ...