使用内存缓存会减少我的实例内存吗?

Will using memcache reduce my instance memory?

由于内存使用率过高,我目前 运行 在我的 Google App Engine 应用程序中遇到软内存错误。许多大型对象正在推动内存使用率飙升。

我想也许如果我从内存缓存中设置和召回它们可能会减少整体内存使用量。通读文档似乎并非如此,内存缓存的好处是减少 HRD 查询。

内存缓存对整体内存的影响是正面还是负面?

编辑:我知道我可以将实例 class 升级到 F2,但我想看看我是否可以在减少内存的同时保持最便宜。

将对象移入和移出 Memcache 不会影响您的内存,除非您在 Java 代码或空集合中销毁这些对象。

更大的问题是memcache实体限制在1MB以内,不保证memcache。第一个限制意味着您不能将非常大的对象推送到 Memcache。

第二个限制意味着您不能轻易地替换,例如,用内存缓存的 HashMap - 无法判断 getValue() returns 是否为空,因为对象不存在或因为它被撞出缓存。因此,您每次都必须对数据存储进行额外调用,以查看对象是否真的不存在。