繁体   English   中英

任务执行通知 flask 和 celery

[英]Notification about task execution flask and celery

我将 celery 和 flask 与 mongodb 后端和代理一起使用。
我试图了解在运行一组同步任务后发出通知的最佳方式是什么。

function 都有一个名为@celery.task的装饰器

def abc():  
    # do something

def fgh():  
    # do something

为了运行这些程序,我使用(abc.s() | fgh.s()).delay()来运行这些任务。

一旦这些任务完全执行,我如何向主程序发出信号?

您可以尝试使用 Redis 作为 Celery 后端的烧瓶通知 另一种方法:检查任务状态/状态(类似于status = celery.AsyncResult(str(task_id)).status )并在循环中等待间隔time.sleep(10) (例如, while True: ... )并更新进度jquery 的某些页面上的栏。 任务完成后(SUCCESS 或 FAILED 状态),您可以使用flash('your message')显示消息或设置重定向。 希望那有帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM