0

我有一个计算密集型应用程序(它执行一些数值方法操作,因此此代码会消耗这么大的堆大小是正常的),当在 Google App Engine 上运行时,它会抛出:“java.lang.OutOfMemoryError: Java堆空间”。甚至 Google App Engine 也假装自动扩展以适应应用程序的需求,但在堆大小方面不会发生这种情况。然后我尝试在 Google Compute Engine 上创建一些实例,例如“16 个 VCPU 和 60 GB 内存”,但仍然出现该错误,因为我怀疑即使此实例使用的堆大小也小于 1 GB。所以我的问题是:如何在 Google Compute Instances 或 Google App Engine 上自定义堆大小,以便将堆大小设置为 2 GB?

谢谢

索林

4

1 回答 1

0

在 Google App Engine上,最大的保险类型限制为 1GB RAM,因此如果您需要超过 1GB RAM,则需要使用 Compute Engine 或App Engine Flexible Environment

在 VM 上运行时,您需要设置-Xmx 和 -Xms标志来分别控制最大和最小堆大小。

请注意,您可能需要使用java644GB 以上的 RAM。

于 2016-04-10T21:06:11.750 回答