【问题标题】:Increasing Java Heap size on Virtual server?增加虚拟服务器上的 Java 堆大小?
【发布时间】:2010-11-16 20:34:22
【问题描述】:

偷看,

我在 Mediatemple 的虚拟服务器上托管我们的开发环境 - 每月 50 美元的那种。我们的应用程序进行了一些内存密集型处理,在最后一次运行时,遇到了 OutofMemError。

使用在 setenv.sh 文件中设置 JAVA_OPT 或 CATALINA_OPT 的常用方法显然不会增加 JVM 大小。启动tomcat时,它会抛出无法创建JVM...错误。

我的 setenv.sh 文件有以下内容:

导出 CATALINA_OPTS='-Xms512m -Xmx1024m'

任何帮助将不胜感激。

【问题讨论】:

  • 您的 VPS 总共有多少 RAM?
  • 运行 ulimit -aulimit -Ha 命令并阅读手册以了解它们的输出含义。

标签: java jvm heap-memory virtual


【解决方案1】:

如果它是托管服务提供商,他们很可能会限制您在服务器中允许使用的 RAM 数量?我将启用 JMX 服务并使用 jconsole.exe 尝试附加到 JVM 以查看其属性。

set JAVA_OPTS=%JAVA_OPTS% -Xdebug -Xrunjdwp:transport=dt_socket,address=8001,server=y,suspend=n

【讨论】:

    【解决方案2】:

    我想知道您正在运行的环境是否对您的进程允许使用的内存量设置了明确的限制,甚至您的 minimum 值也超过了 - 因此无法创建 JVM。

    我建议你问问托管公司他们对内存有什么限制。

    如果您将限制设置得更适度(例如 64M 和 128M),Tomcat 会启动吗? (我知道这对您来说可能还不够,但它有助于诊断问题。)

    【讨论】:

    • 如果是这样,您可以尝试在默认值上增加 1MB,看看会发生什么。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-23
    • 2012-12-07
    • 2013-01-26
    • 1970-01-01
    • 1970-01-01
    • 2012-07-14
    相关资源
    最近更新 更多