我正在使用Django来开发分类器服务,并且用户可以使用API来构建模型,如http://localhost/api/buildmodel
,但是,因为构建模型需要很长时间,可能需要2个小时,而且我正在使用网页来显示结果建立模型。如何设计我的Django程序以立即返回并在构建完成后执行某些操作以显示结果?也许我可以使用ajax,但我想在Python中实现它,比如使用异步方法并在构建之后调用回调函数,任何建议都将不胜感激。如何处理需要花费很长时间才能运行的请求?
1
A
回答
3
0
一种方法是在任务中为持久数据库(或Redis键/值对)创建一行,表明它是否正在运行或完成。让代码将该值设置为在任务启动时运行,并在任务完成时完成。然后有一个AJAX调用对通过Web服务发送任务状态的URL进行GET查找。你可以把它放在setInterval()中来周期性地轮询数据库,看它是否完成。您可以在完成时发送电子邮件,或者只是具有显示正在运行的任务状态的登录页/仪表板。
相关问题
- 1. 当uWSGI花费很长时间处理请求时,Nginx超时
- 2. 简单的GET请求需要很长时间才能返回
- 3. PHP请求输出需要很长时间才能收到
- 4. MVC行动花费很长的时间才能返回
- 5. C#许多URL请求,需要很长的时间处理
- 6. android studio需要花费很多时间才能打开项目?
- 7. Magento Indexing需要花费很多时间才能完成
- 8. jQuery/Ajax调用需要花费很多时间才能完成
- 9. WinVerifyTrust函数花费很长时间才能执行
- 10. 需要很长时间才能运行的Javascript表单验证
- 11. 需要很长时间才能运行的python脚本
- 12. 需要很长时间才能运行的python脚本
- 13. 图像处理非VHDL综合需要花费很多时间
- 14. SOAP请求花费太长时间来处理大型数据
- 15. Ravendb Savechanges();需要很长时间才能运行?
- 16. sp_reset_connection需要很长时间才能运行
- 17. IIS需要很长时间才能运行
- 18. MPI_Init()需要很长时间才能运行
- 19. Web服务需要很长时间才能第一次运行
- 20. Crystal Report Viewer需要很长时间才能运行
- 21. 此存储过程需要很长时间才能运行?
- 22. CREATE TABLE AS后SELECT需要很长时间才能运行
- 23. Itertools需要很长时间才能运行
- 24. Oracle Procedure需要很长时间才能运行,但直接sql运行很快
- 25. 功能花费很长的时间在Python运行 - 效率
- 26. GAE:如何找出哪些请求需要很长时间才能完成?
- 27. Python多处理比单处理花费的时间要长很多
- 28. 解析请求花了很长时间来处理
- 29. 如何最好地处理需要很长时间才能完成的Ajax请求?
- 30. 正在下载可能需要很长时间才能请求的文件
重构代码。 – catherine 2013-02-25 03:22:06