我们正在将Web应用程序从Java 7迁移到Java8。我们已经定义了PermSize
jvm param参数。
由于Java 8会忽略此参数,因此不再使用。元空间是Java 8中引入的,其默认大小随动态增长而不受限制(限于物理内存)。
我的问题是我是否需要为metaspace
jvm params确定Web应用程序的最佳值,或者使用default是一个好主意?
更新:
我的Web应用程序上的更多信息:
我的Web应用程序基于struts
和spring
框架。通常每分钟需要4k
个请求。该应用程序部署在tomcat 8.5上,并且不承载任何其他Web应用程序。但是,同一虚拟机上运行着多个tomcat实例。当前的-Xms
和-Xmx
值设置为1g
。
最佳答案
您可以考虑以下多项内容:
-XX:MetaspaceSize=<NNN>
-XX:MaxMetaspaceSize=<NNN>
-XX:MinMetaspaceFreeRatio=<NNN>
和-XX:MaxMetaspaceFreeRatio=<NNN>
我的建议是坚持默认设置,对其进行测试,仅在需要时使用react。