我正在尝试在 cloudfoundry.com 运行Grails应用程序,但它返回了502错误网关,然后返回了404未找到。 我找到了日志/错误.log,它说:
# Logfile created on 2012-11-22 17:39:55 +0000 by logger.rb/25413
F, [2012-11-22T17:39:55.488036 #10723] FATAL -- : Memory limit of 512M exceeded.
F, [2012-11-22T17:39:55.488101 #10723] FATAL -- : Actual usage was 516M, process terminated.
在此之前,我遇到了PermGen空间错误,所以我将其添加到环境中:
+-----------+----------------------------------------+
| Variable | Value |
+-----------+----------------------------------------+
| JAVA_OPTS | -XX:MaxPermSize=512m -Xms512M -Xmx512M |
+-----------+----------------------------------------+
我有哪些选择? 我可以进行任何调整以尝试将我的应用程序放入 512M 吗? 如果我减小 MaxPermSize,这会给我的应用带来更多空间吗? 有没有办法确定需要多大的彼尔姆空间?
还是我只是超越了CloudFoundry? 有什么方法(包括付费)可以在CloudFoundry获得更大的VM? 还是我必须完全迁移到其他服务?
您只需要更改分配给应用程序的资源量。例如,您可以使用 VMC 执行此操作,将名为"我的应用程序"的应用程序的内存分配更改为 1GB;
vmc mem myapp 1G
请记住,您的帐户最多可容纳 2G,用于您的所有应用程序。
我遇到了同样的问题,vmc
api 已更改,将被 cf 取代。
到目前为止,增加应用程序内存的方法正在执行 vmc scale [APP] --memory MEMORY
.例如,如果要将应用程序增加到 1G,则该命令将vmc scale yourappname --memory 1G