共享内存缓存与专用内存缓存&配额计算

时间:2013-12-06 20:25:16

标签: google-app-engine caching quota

我有一个应用程序,可以在memcache中存储~20000个条目。每个条目都是一个Serializable,包含一个String和两个整数。我将到期时间设置为6小时。

所以我使用的是共享/免费内存缓存。它似乎只存储了约5000个条目 - > 〜7MB。最古老的入口总是只有几分钟的路程。那是为什么?

然后我想:让我们切换到专用的memcache。然后缓存运行正常,它存储所有条目,最旧的条目是6小时,一切都按预期。除配额外。几个小时后,它说我已经使用了18“Gbyte小时”。

我的总缓存大小是~11mb。所以我猜想成本是($ 0.12 / Gbyte / hr) - >每天$ 0.12 * ~0.01Gb * 24小时,只需0.03美元。

我做错了什么?我的计算错了吗?我是否误解了“Gbyte hours”的含义?

2 个答案:

答案 0 :(得分:6)

AppEngine专用内存缓存的价格为每1GB块,而不是基于您在专用分配的1GB存储中使用的内容。见https://developers.google.com/appengine/docs/adminconsole/memcache

您的专用内存将每天花费2.88美元。

“专用”为您提供空间,但每秒操作次数(每秒10,000次操作)。

关于您在共享(和免费)内存缓存方面的体验,您在这里看到的并不是您通常所期望的。遗憾的是,很可能是在AppEngine集群中,其他一些应用程序正在滥用共享内存缓存。

答案 1 :(得分:3)

千兆字节的专用内存帐单。因此,任何低于1GB的东西都被称为1GB,你可能已经运行了18个小时。是的,有点糟糕。