我正在尝试针对延迟优化我的GAE webapp。
该应用有两个请求,通常是一个接一个。
在第一次请求期间启动异步db / memcache请求是否安全,然后在以下请求中使用其结果?
(我知道第二个请求可能会遇到另一个实例。它将作为缓存未命中处理)
答案 0 :(得分:0)
您无法在一个请求中启动异步API调用,并在另一个请求中获取其结果。在发送HTTP响应之前,HTTP服务基础结构将等待请求中启动的所有API调用完成;表示异步API调用的数据结构在第二个请求中将无用(即使它遇到同一个实例)。
您可以尝试使Appstats找出您的请求正在进行的API调用,看看是否可以避免使用某些内容,对某些内容使用内存缓存,或者并行化。
您也可以使用在数据存储区API中集成memcache的NDB。