文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
任务队列简介
任务队列为后台作业提供了一个便捷的解决方案。 Worker 进程独立于应用程序运行,甚至可以位于不同的系统上。 应用程序和 worker 之间的通信是通过 消息队列 完成的。 应用程序提交作业,然后通过与队列交互来监视其进度。 下图展示了一个典型的实现:
Python 中最流行的任务队列是 Celery 。 这是一个相当复杂的软件包,它有很多选项并支持多个消息队列。 另一个流行的 Python 任务队列是 Redis Queue (RQ),它牺牲了一些灵活性,比如只支持 Redis 消息队列,但作为交换,它的建立要比 Celery 简单得多。
Celery 和 RQ 都非常适合在 Flask 应用程序中支持后台任务,所以我倾向于选择更简单的 RQ。 不过,用 Celery 实现相同的功能其实也不难。 如果你对 Celery 更感兴趣,可以阅读我的博客中的 Using Celery with Flask 文章。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论