1. 程式人生 > 其它 >Java程序佔用記憶體過高,排查解決方法

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       834     1  0 May13 ?        00:30:09 /usr/lib/jvm/java/bin/java -Djava.util.logging.config.file=/data/apache-tomcat-9.0.13/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /data/apache-tomcat-9.0.13/bin/bootstrap.jar:/data/apache-tomcat-9.0.13/bin/tomcat-juli.jar -Dcatalina.base=/data/apache-tomcat-9.0.13 -Dcatalina.home=/data/apache-tomcat-9.0.13 -Djava.io.tmpdir=/data/apache-tomcat-9.0.13/temp org.apache.catalina.startup.Bootstrap start
root      1294     1  3 May13 ?        14:41:25 /usr/lib/jvm/java/bin/java -Djava.util.logging.config.file=/data/apache-tomcat-9.0.13/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /data/apache-tomcat-9.0.13/bin/bootstrap.jar:/data/apache-tomcat-9.0.13/bin/tomcat-juli.jar -Dcatalina.base=/data/apache-tomcat-9.0.13 -Dcatalina.home=/data/apache-tomcat-9.0.13 -Djava.io.tmpdir=/data/apache-tomcat-9.0.13/temp org.apache.catalina.startup.Bootstrap start
root      2085     1  0 Mar05 ?        01:57:08 /usr/lib/jvm/java/bin/java -Djava.util.logging.config.file=/data/apache-tomcat-9.0.13/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /data/apache-tomcat-9.0.13/bin/bootstrap.jar:/data/apache-tomcat-9.0.13/bin/tomcat-juli.jar -Dcatalina.base=/data/apache-tomcat-9.0.13 -Dcatalina.home=/data/apache-tomcat-9.0.13 -Djava.io.tmpdir=/data/apache-tomcat-9.0.13/temp org.apache.catalina.startup.Bootstrap start
root     12808     1  0 Mar08 ?        01:16:03 /usr/lib/jvm/java/bin/java -Djava.util.logging.config.file=/data/apache-tomcat-9.0.13/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /data/apache-tomcat-9.0.13/bin/bootstrap.jar:/data/apache-tomcat-9.0.13/bin/tomcat-juli.jar -Dcatalina.base=/data/apache-tomcat-9.0.13 -Dcatalina.home=/data/apache-tomcat-9.0.13 -Djava.io.tmpdir=/data/apache-tomcat-9.0.13/temp org.apache.catalina.startup.Bootstrap start
root     19392     1  0 May09 ?        00:36:19 /usr/lib/jvm/java/bin/java -Djava.util.logging.config.file=/data/apache-tomcat-9.0.13/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /data/apache-tomcat-9.0.13/bin/bootstrap.jar:/data/apache-tomcat-9.0.13/bin/tomcat-juli.jar -Dcatalina.base=/data/apache-tomcat-9.0.13 -Dcatalina.home=/data/apache-tomcat-9.0.13 -Djava.io.tmpdir=/data/apache-tomcat-9.0.13/temp org.apache.catalina.startup.Bootstrap start
root     19838     1  1 May09 ?        05:32:17 /usr/lib/jvm/java/bin/java -Djava.util.logging.config.file=/data/apache-tomcat-9.0.13/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /data/apache-tomcat-9.0.13/bin/bootstrap.jar:/data/apache-tomcat-9.0.13/bin/tomcat-juli.jar -Dcatalina.base=/data/apache-tomcat-9.0.13 -Dcatalina.home=/data/apache-tomcat-9.0.13 -Djava.io.tmpdir=/data/apache-tomcat-9.0.13/temp org.apache.catalina.startup.Bootstrap start
root     21543     1  0 May27 ?        00:22:03 /usr/lib/jvm/java/bin/java -Djava.util.logging.config.file=/data/apache-tomcat-9.0.13/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /data/apache-tomcat-9.0.13/bin/bootstrap.jar:/data/apache-tomcat-9.0.13/bin/tomcat-juli.jar -Dcatalina.base=/data/apache-tomcat-9.0.13 -Dcatalina.home=/data/apache-tomcat-9.0.13 -Djava.io.tmpdir=/data/apache-tomcat-9.0.13/temp org.apache.catalina.startup.Bootstrap start
root     22750     1  5 May27 ?        02:28:41 /usr/lib/jvm/java/bin/java -Djava.util.logging.config.file=/data/apache-tomcat-9.0.13/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /data/apache-tomcat-9.0.13/bin/bootstrap.jar:/data/apache-tomcat-9.0.13/bin/tomcat-juli.jar -Dcatalina.base=/data/apache-tomcat-9.0.13 -Dcatalina.home=/data/apache-tomcat-9.0.13 -Djava.io.tmpdir=/data/apache-tomcat-9.0.13/temp org.apache.catalina.startup.Bootstrap start

由上圖所示,可以看到java程序是Tomcat的啟動程序,開啟多個Tomcat啟動程序,並且是同一個埠。由此,可以判斷,是因為關閉Tomcat服務時,java程序沒有自動關閉,導致記憶體沒有釋放。

2、使用lsof命令:lsof | grep java |grep -v grep

檢視當前程序的執行狀態

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 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、然後檢視主機監控,果然記憶體使用率下降,網站執行正常

如果有錯誤,歡迎各位網友指導。 另外喜歡的話,給個推薦唄,謝謝!

轉自:https://www.cnblogs.com/eeexu123/p/10913389.html