我已经使用GAE创建了一个应用。我希望每天有10万个请求。目前,对于每个请求应用程序,在执行所需的任务之前需要查找4个表和8个diff列。
这4个表是我的主表,具有5k,500、200和30条记录。小于1 MB(限制)。
现在,我想将主记录放入内存缓存中,以加快访问速度并减少RPC调用。当任何用户更新母版时,我将替换memcache对象。
我需要社区对此的建议。
可以更改当前设计吗?
如何将4个主表数据放入内存缓存?
这是目前应用程序的工作方式
department
)并检查p1是否存在。如果存在,请检查启用状态。您不应该考虑将表插入到内存缓存中。相反,请使用“乐观缓存”策略:每次需要执行要缓存的操作时,请先尝试在内存缓存中查找它,如果失败,则从数据存储区中获取它,然后将其存储在内存缓存中。这是一个例子:
def cached_get(key):
entity = memcache.get(str(key))
if not entity:
entity = db.get(key)
memcache.set(str(key), entity)
return entity
但是请注意,缓存单个实体的回报率很低-数据存储区执行提取的速度相当快。缓存查询结果或呈现的页面将大大提高速度。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句