我目前正在使用GAE提供的Memcache服务来缓存服务器上的内容。目前缓存大小接近20~30MB。
最初缓存的生命周期为 6-7 小时。随着流量的增加,缓存的生命周期已降至 20 分钟。
我们计划将缓存大小增加到 1-2GB。我们可以使用 GAE 上的分布式缓存的任何替代实现吗?
下面列出了我已经尝试过的方法。但是,这些步骤并不能解决我们对 GAE 上更好的缓存服务的需求
- 使用 Memcache(缺点 - 缓存大小有限)
- 将对象存储在实例内存中(缺点 - 无法维护实例之间的数据一致性)
- 压缩存储的 JAVA 对象(略有改进 - 缓存生命周期仅提高 20%)
最佳答案
由于您最初依赖 6-7 小时的缓存,这听起来像是利用 Google 边缘缓存的绝佳用例。理论上,这是一个基于 Google 网站分布式缓存的免费缓存。
基本上,您想要设置缓存 header ,例如:
Cache-Control: public, max-age=600
关于google-app-engine - Google App Engine 上有 Memcache 的替代品吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17046261/