升级后,我们得到OutOfMemoryError。 JVM设置保持与Java 7一样正常工作。java.lang.OutOfMemoryError:从Java 7迁移到Java 8后出现Metaspace错误
这里是Jboss的4.2服务器的设置:在Java 7中
-server -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Xms4096m -Xmx7168m -XX:MaxMetaspaceSize=512m -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -Djava.security.egd=file:///dev/urandom
唯一的区别是XX:MaxMetaspaceSize =512米与PermGen的最大被取代。
我想知道为什么它需要更多的Metaspace进行类加载,因为服务器&应用程序是相同的&只是Java版本中的更改。
你有错误的堆栈跟踪?我想知道OOM的确切错误。 –
当您使用Java 8启动JBoss时,您能否提供确切的Java参数? – DevDio
所使用的Java参数被添加到查询中:-server -Dsun.rmi.dgc.client.gcInterval = 3600000 -Dsun.rmi.dgc.server.gcInterval = 3600000 -Xms4096m -Xmx7168m -XX:MaxMetaspaceSize = 512m -XX:+ UseConcMarkSweepGC -XX:+ CMSClassUnloadingEnabled -Djava.security.egd = file:/// dev/urandom –