因此,我们可以使用sometask.appy_async()
来启动一个芹菜任务,使用sometask.AsyncResult(task_id)
来查询结果。
现在的情况是我开始了一些任务,我想同时查询它们的结果。伪代码为:sometask.AsyncResult(task_1, task_2, task_3)
我使用Redis来存储结果,我知道在Redis中,可以使用MGET KEY1 KEY2 .. KEYN
在一个命令中检索多个键值。那我怎样才能把它放在芹菜里呢?
实现这一点的最简单方法是使用Celery工作流。更确切地说,是群基元。Group的重要之处在于它返回GroupResult(将其视为AsyncResults的集合(。