2

我目前正在使用 GAE 提供的 Memcache 服务来缓存服务器上的内容。当前缓存的大小接近20~30MB。

最初缓存的生命周期为 6-7 小时。随着流量的增加,缓存的生命周期已降至 20 分钟。

我们计划将缓存大小增加到 1-2GB。我们可以使用 GAE 上的分布式缓存的替代实现吗?

下面提到了我已经尝试过的方法列表。但是,这些步骤并不能解决我们在 GAE 上提供更好的缓存服务的需求

  • 使用 Memcache(缺点 - 缓存大小有限)
  • 将对象存储在实例内存中(缺点 - 无法保持跨实例的数据一致性)
  • 压缩正在存储的 JAVA 对象(略有改进 - 缓存寿命仅提高 20%)
4

2 回答 2

2

由于您最初依赖于 6-7 小时的缓存,因此这听起来像是利用 Google 边缘缓存的绝佳用例。理论上,这是基于谷歌分布式网站缓存的免费缓存。

基本上,您要设置缓存标头,例如:

Cache-Control: public, max-age=600

请参阅此 SO 答案此 Google Groups 帖子

于 2013-06-11T14:34:12.607 回答
1

If you are a Python developer, maybe this blog post from Nick Johnson will help you: http://blog.notdot.net/2010/11/Storage-options-on-App-Engine

于 2013-06-11T14:45:03.713 回答