django中如何处理上传的文件并在文件上传后通知用户
我有一个 Django 应用程序,允许用户上传文件。我正在服务器上处理此文件,完成任务大约需要 3 分钟。我假设浏览器在 POST 请求后不会等待那么长时间的响应。所以我想要一种方法在文件上传后立即响应帖子并在新线程中启动繁重的操作,然后 3 分钟后通知用户。 这在 Django 中可能吗?如何实现?请指导我。谢谢
I have a Django app that allows a user to upload file. I am processing this file on the server and it takes about 3 mins for the task to complete. I am assuming the browser won't wait that long for a response after POST request. So I want a way to respond to the post immediately after the file upload and start the heavy operation in a new thread and then 3 mins later notify the user.
Is this possible in Django and how? please do guide me. Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
要运行长时间运行的任务,您可以将 Celery 与 Redis(或任何其他 Celery Broker)结合使用
这样就可以运行后台任务了。
现在要通知用户任务完成,您可以使用 django-notifications 或套接字。 io + redis 或 djang-websocket
To run a long running tasks, you can use Celery with Redis (or any other Celery Broker)
In this way, you can run a background task.
Now to notify a user about task completion, you can use django-notifications or socket.io + redis or djang-websocket