背景:
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 UI から設定されます。
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.5 GB のままですが、メモリ使用量は最大 15 GB になります。残りのすべてのプロセスを合計すると、最大 1 GB になります。どのプロセスが残りの 9 ~ 10 GB を消費しているのかわかりません。
何かご意見は?
ありがとう。