Google App Engine中的进度栏
问题内容:
我有一个Google App
Engine应用程序,该应用程序执行约30-50次对远程API的调用。每次通话大约需要一秒钟,因此整个操作可能需要一分钟。当前,我在站点的post()函数内部循环执行此操作,因此直到整个操作完成后才显示响应。不用说,该应用程序目前还不太实用。
我想做的是在操作开始后立即打印响应,然后在每个API调用完成后对其进行更新。我将如何实现?在桌面应用程序上,我将启动一个工作线程,该线程会定期更新前端。Google
App Engine中有类似的机制吗?
我在Google搜索“进度栏”和“
Google应用程序引擎”,但是大多数结果来自希望监视文件上传进度的人。我的情况有所不同:耗时的任务正在服务器上执行,因此客户端无法监视其进度。
这个人是我能找到的最接近的人,但是他使用Java。
问题答案:
- 使用http://code.google.com/appengine/docs/python/taskqueue将发布逻辑发送到任务
- 更改流程的逻辑以设置状态(可能使用了内存缓存)
- 每隔10秒或多或少使用AJAX查询内存缓存状态,这取决于您