我的Java EE
应用程序在主机服务器上运行正常,但它占用了大量的堆空间。允许的堆空间为64MB
。每当我的应用使用更多64 MB
堆时,我的主机帐户都会被暂停。我认为托管服务提供商没有为我的应用设置最大堆空间,这就是为什么我没有得到outOfMemoryException
到达>64MB
。
我有自己的tomcat实例,我可以配置tomcat配置。
我的问题是 - 如何为我的tomcat实例设置最大允许堆空间,以便在达到限制时抛出outOfMemoryException
?
这样我的托管帐户就不会被暂停。
我必须在哪些地方对这些文件进行更改?
答案 0 :(得分:2)
增加堆空间很简单,只需将命令行开关添加到JVM:
-Xmx2g
2g用于2Gb,如果你想要兆字节:512m ---> -Xmx512m
答案 1 :(得分:1)
您有一个名为 JAVA_OPTS 的变量。
添加参数-Xmx1g
。
替换:set JAVA_OPTS=%JAVA_OPTS% -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file="%CATALINA_BASE%\conf\logging.properties"
with:set JAVA_OPTS =%JAVA_OPTS%-Djava.util.logging.manager = org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file =“%CATALINA_BASE%\ conf \ logging.properties” - Xmx1g
答案 2 :(得分:1)
它在setenv.sh中,将被catalina.sh检测到:
JVM_ARGS = “ - Xmx64m”
此致
菲利普