エンタープライズアプリケーションはwildfly 8.2にデプロイされ、最小&の最大ヒープは1.5GBに設定されています。アクションの1つが、あまりにも多くのオブジェクトをヒープにロードする原因になっています。オブジェクトはアクションの後に参照解除されますが、jvmヒープの使用率は低下しません。Jboss GCがメモリを解放しない
しかし、(jcmdを使用して)GCを外部から手動で起動すると、ヒープ使用量が大きく減少しています。通常のGCがGC.runほどメモリを削減しないのはなぜですか?
JVM設定
-Xms1536m -Xmx1536m -XX:MaxMetaspaceSize = 512メートル-XX:ReservedCodeCacheSize = 128M -server -XX:+ HeapDumpOnOutOfMemoryError -XX:HeapDumpPath =/TMP -verbose:GC -XX :+ PrintGCTimeStamps -XX:+ PrintGCDetails -Djsse.enableSNIExtension = falseを-Dsun.rmi.dgc.client.gcInterval = 600000 -Dsun.rmi.dgc.server.gcInterval = 600000あなたは、外部からのトリガ何
OPは、この動作に間接的に寄与しているGDCによってFull GCがトリガーされる頻度を減らしています。 +1 –
よく書かれていますが、EJBにも当てはまりますか?彼らはプールされ、要求の後で "クリーンアップ"する必要があります。私は、DGCが未加工のRMIの使用に関する問題であると思っていました。 –
gdcはrmi用ですが、何をしていても定期的に完全なGCが発生することを保証します。 –