Java 如何增加google云应用程序引擎的堆大小?
我现在正在使用Google Cloud App Engine标准的Java应用程序环境,我得到了Java 如何增加google云应用程序引擎的堆大小?,java,google-app-engine,heap-memory,Java,Google App Engine,Heap Memory,我现在正在使用Google Cloud App Engine标准的Java应用程序环境,我得到了outOfMemory错误,因为Java堆大小`已经很满了 我知道为什么,因为我正在处理大量可能达到1GB的数据。那么,如何增加为在app Engine标准环境中运行的java应用程序分配的堆大小呢?除非可以使用云存储或数据存储卸载一些数据,您应该考虑使用KubNETES或CealEngine,因为它们允许更精细的调整,并且必须与./P>>P>进行比较,除非有可能使用云存储或数据存储来卸载某些数据,你
outOfMemory错误
,因为Java堆大小`已经很满了
我知道为什么,因为我正在处理大量可能达到1GB的数据。那么,如何增加为在app Engine标准环境中运行的java应用程序分配的堆大小呢?除非可以使用云存储或数据存储卸载一些数据,您应该考虑使用KubNETES或CealEngine,因为它们允许更精细的调整,并且必须与./P>>P>进行比较,除非有可能使用云存储或数据存储来卸载某些数据,你应该考虑使用KubNETes或计算引擎,因为它们允许更精细的调整,并且必须从与./P>> P>中选择。我已经通过移动到Java8来修复我的问题,现在我使用java 8环境变量来增加java堆大小,将其添加到AppEngine Web.XML/P>
<env-variables>
<env-var name="GAE_MEMORY_MB" value="1024M" />
<env-var name="HEAP_SIZE_RATIO" value="90" />
</env-variables>
我已经通过迁移到java8解决了我的问题,现在我使用java8环境变量通过将其添加到appengine-web.xml中来增加java堆大小
<env-variables>
<env-var name="GAE_MEMORY_MB" value="1024M" />
<env-var name="HEAP_SIZE_RATIO" value="90" />
</env-variables>
默认情况下,应用程序引擎标准使用只有128MB和600MHz处理器的F实例。我们遇到了同样的堆问题,最终“升级”到了功能更强大的应用程序引擎标准实例。您还可以切换到auto scaling basic或manual,这将使您能够更好地控制您的请求(例如,请求在10分钟内不再超时)。可以找到有关不同实例类的更多信息 要应用更改,您必须更新并添加以下内容:
<instance-class>B4</instance-class>
<basic-scaling>
<idle-timeout>60m</idle-timeout>
<max-instances>10</max-instances>
</basic-scaling>
B4
60米
10
默认情况下,应用程序引擎标准使用只有128MB和600MHz处理器的F实例。我们遇到了同样的堆问题,最终“升级”到了功能更强大的应用程序引擎标准实例。您还可以切换到auto scaling basic或manual,这将使您能够更好地控制您的请求(例如,请求在10分钟内不再超时)。可以找到有关不同实例类的更多信息
要应用更改,您必须更新并添加以下内容:
<instance-class>B4</instance-class>
<basic-scaling>
<idle-timeout>60m</idle-timeout>
<max-instances>10</max-instances>
</basic-scaling>
B4
60米
10
i考虑迁移到java8并使用java8环境变量来增加堆大小,如本文所述,“灵活环境中的VM实例是Google Compute Engine虚拟机”,因此您的建议可能确实适合您,作为应用程序引擎,标准应用程序的最大内存为1GB。中有一个可用计算引擎实例的列表。我正在考虑迁移到java8,并使用java8环境变量来增加堆大小,如本文所述,“灵活环境中的VM实例是Google Compute Engine虚拟机”,因此您的建议可能确实适合您,作为应用程序引擎,标准应用程序的最大内存为1GB。中有一个可用计算引擎实例的列表。