我正在写一个小的Django网站,它将为用户提供一种删除Flickr上所有联系人的方法。
这主要是一个学习Selenium的练习,而不是一些实际有用的东西-因为Flickr API没有提供删除联系人的方法,所以我使用Selenium来制作一个实际的web浏览器来执行实际删除联系人的操作。
因为这可能需要一段时间,所以我想向用户显示一条消息,告诉用户删除正在完成,然后在删除完成时通知他们。
在Django中,正确的方式是立即将网页返回给用户,同时在服务器上执行在页面返回后继续执行的任务?
我的Django视图函数会使用the Python threading module让删除代码在另一个线程中运行,同时将页面返回给用户吗?
发布于 2012-10-02 01:02:21
考虑使用一些任务队列-- Django社区最喜欢的解决方案之一就是在RabbitMQ中使用芹菜。
发布于 2012-10-02 03:16:54
一旦我需要它,我设置了另一个Python进程,它将通过xmlrpc与Django通信-这个进程将处理长请求,并能够回答每个请求的状态。Django视图将调用其他进程(通过xmlrpc)来对作业进行排队,并查询作业状态。我在django中创建了几个合适的json视图来查询xmlrpc进程,并使用javascript异步调用这些视图(也称为Ajax)来更新html页面。
https://stackoverflow.com/questions/12677715
复制相似问题