【问题标题】:heap space on a java hostjava主机上的堆空间
【发布时间】:2012-04-01 05:42:50
【问题描述】:

我即将在某个具有无限磁盘空间和流量的网站上注册 java 托管计划,并使用 tomcat 7.0.2 作为我的服务器。

我打算在这个主机上发布我用 JSF2 和其他一些技术开发的所有网站,但我发现我只有 64mb 堆空间,我担心如果我同时运行许多应用程序,这可能会成为问题。

任何人对这会如何影响服务器有意见,请告诉我。

谢谢

【问题讨论】:

    标签: java tomcat jsf heap-memory


    【解决方案1】:

    这肯定是不够的,即使对于一个应用程序也是如此。您可以在本地尝试 - 运行一个 tomcat 并将 -Xmx64m 作为 JVM 选项传递,然后查看您的应用程序是否正常运行,或者它们是否引发 Java Heap Space 错误。

    如果你不能增加它,我建议使用 Amazon EC2。您也可以在那里使用更新版本的 tomcat。

    【讨论】:

    • @Bohzo:EC 2 是否有任何“最大”Java 堆?
    • 是的,这取决于您正在运行的实例。最小的实例有大约 700 MB RAM
    【解决方案2】:

    在生产中使用您的应用程序之前,我建议您: - 使用 JMeter (http://jmeter.apache.org/) 等测试工具测试您的应用程序 - 在你的测试过程中使用 jconsole 之类的工具监控 tomcat 的 jvm。分析每个用例所需的内存。

    您肯定需要将内存调整到 64mb 以上。 在不了解您的 Web 应用程序的情况下,很难/不可能为您提供必要的内存量。

    还要注意,如果您使用 64 位 JVM,则对象的消耗可能是两倍(除非您使用 -XX:+UseCompressedOops)

    【讨论】:

      猜你喜欢
      • 2015-12-14
      • 2021-09-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-11
      • 1970-01-01
      • 1970-01-01
      • 2011-10-27
      相关资源
      最近更新 更多