django处理大量请求时保持http连接(20分钟+)

时间:2012-06-27 14:41:32

标签: django http

我有一个正在制作csv下载的django网站。 csv的内容由用户定义的参数决定。用户可能会在服务器上设置需要大量思考时间的参数。我需要一种维持http连接的方法,以便浏览器不会出现错误消息。我听说可以发送间歇性的http标头来执行此操作。任何人都可以指出我正确的方向在django网站上设置它吗?

(不幸的是,我坚持报告缓慢的可能性 - 改进我的sql不会减轻这种情况)

2 个答案:

答案 0 :(得分:5)

不要在线进行。触发离线任务,使用一些Javascript重复调用一个视图来检查任务是否已完成,并在准备就绪时重定向到已完成的文件。

答案 1 :(得分:3)

而不是阻止用户及其浏览器20分钟(这不是一个好主意)在后台执行耗时的任务。当任务完成并生成结果时,只需通知用户,以便他/她只需要下载准备好的结果。