当尝试在Eclipse中启动和运行flex/java项目时,我使用eclipse、Tomcat和JRE不断得到一个“内存不足异常”和"Java堆空间“。
在研究尝试调整内存设置时,我发现有三个地方可以调整这些设置:
窗口>
下的Catalina.bat JRE设置
在这些不同的地方设置-xms和-xmx有什么区别?
有没有办法验证这些内存设置是否相应地进行了设置?
对于具有2 2gb内存的计算机,最佳的-xms和-xmx设置是什么?
还有其他的记忆小贴士吗?
谢谢。
发布于 2008-12-02 14:33:49
-xms是启动内存(在虚拟机启动时),-xmx是虚拟机的最大内存
的内存。
发布于 2008-12-02 15:08:02
首先,我建议您将问题缩小到组件抛出“内存不足异常”的问题。
这可能是:
下使用doubt)
JVM参数-xms
和-xmx
表示堆的“起始内存”和“最大内存”。忘记“开始记忆”吧。这现在对你没有帮助,只有当你确定你的应用程序会迅速消耗这么多内存时,你才应该改变这个参数。
在生产环境中,我认为您唯一可以更改的参数是Catalina.sh或Catalina.bat文件下的-xmx
。但是,如果您直接从Eclipse使用Tomcat配置调试环境来测试您的webapp,您只需转到"Debug Configurations“> "Apache Tomcat”> "Arguments“> "VM arguments”并在那里设置-xmx
即可。
至于2 2gb的最佳-xmx
,这在很大程度上取决于你的环境和你的应用程序可能接受的请求数量。我会尝试从500mb到1 1gb的值。检查您的操作系统虚拟内存“区域”限制和JVM本身的限制。
发布于 2009-11-12 20:46:11
在我们的案例中发现了两个问题。
https://stackoverflow.com/questions/334102
复制相似问题