【发布时间】:2014-05-19 21:39:41
【问题描述】:
所以我遇到了一个问题,即工作人员的 POST 命令中的任务耗时过长,并且出现了 DeadlineExceededErrors。我开始使用 Taskqueues,这部分现在效果很好——不再出现 Deadline 错误。现在的问题是我的主页在任务队列完成之前“刷新”(self.redirect),所以新的细节不会自动显示,用户必须自己按刷新,这很麻烦。您对解决此问题的最简单方法有什么建议吗?我的应用程序的高级概述如下:
1) Main Handler 具有 Get 和 Post - Get 写入一个 html 页面,该页面在队列中的任务完成后显示新值。它还有一个表单,可以将查询提交到其 Post 部分。
Post 部分将任务添加到任务队列中,然后调用 self.redirect 回到主 html 页面。
2) Main Worker 有一个 Post 命令 - 这是添加到队列中的内容。运行大约需要 1-2 分钟,然后使用新值更新 ndb.Model 元素。
回到 Main Handler Get 函数中,ndb.Model 元素调用其 .query() 函数以返回新值。
任何帮助或建议将不胜感激。谢谢!
【问题讨论】:
标签: google-app-engine app-engine-ndb