背景
Windows Server 2012 R2- 64 bit
16 GB RAM
Tomcat 8
Java 8 我正在Tomcat 8上运行一个java应用程序,我面临内存使用率高的问题。内存使用率高达95%,服务器崩溃。CPU的使用没有问题。
我将JAVA_OPTS设置为tomcat\bin\catalina.bat
set "JAVA_OPTS=%JAVA_OPTS% %LOGGING_CONFIG% -XX:+CMSClassUnloadingEnabled -XX:+CMSPermGenSweepingEnabled -XX:PermSize=512m -XX:+UseParallelGC"注意: XMS和XMX是从catalina设置的。
我明白,在Java 8中没有PermGen概念,所以我也尝试在JAVA_OPTS下面使用-XX:MaxMetaspaceSize=512m
set "JAVA_OPTS=%JAVA_OPTS% %LOGGING_CONFIG% -XX:+CMSClassUnloadingEnabled -XX:+CMSPermGenSweepingEnabled -XX:MaxMetaspaceSize=512m -XX:+UseParallelGC"但没有运气。
有趣的事情:
tomcat进程使用的内存保持在3.5GB左右,但内存使用率高达15 GB。所有剩余的进程加起来只有1GB。我不知道哪个进程正在消耗剩余的9-10 GB。
系统内存上升,这是一个简单的过程。

有什么想法吗?
谢谢。
发布于 2016-11-23 09:41:32
问题在于我们正在使用的VM。有一些更新过程用来使VM保持忙碌。
https://stackoverflow.com/questions/40278301
复制相似问题