直到现在我才想到这一点,我已经使用 GAE 有一段时间了——但从来没有想到它的内存模型,因为它的 JVM 已经存在,我不能说他们正在使用哪个 JVM 或 JVM 版本。
所以我的问题是 GAE 什么时候会抛出堆溢出错误?或者至少会破坏我的应用程序或 GAE 会做什么。我不知道。
例如,我将String
使用 sizeof 的数据推到了极限2^31 -1
设计明智:我知道这很疯狂,但这个想法与拥有数百万或数十亿或用户将数据推送到您的 GAE 应用程序中是相同的,那么您的应用程序的工作就是在持久化之前对其进行处理(序列化/反序列化)。
那么这些的堆总和将是巨大的,它们可能不会同时发生,但肯定会有一个切点,堆使用量会很大。
这是 GAE 应用程序必须考虑的事情吗?