使用芹菜将任务链接到一个组中

时间:2014-05-22 17:30:39

标签: python celery

这就是我想要做的事情我有一堆子任务链接在一起并最终链接到一个组。我正在将文件名传递给正在修改的每个任务,并且需要将该结束文件放入链末端的每个任务中。我目前正在" EncodeError:键必须是一个字符串"我认为这是因为在一个chaing里面有一个小组。我的代码如下所示:

tmp = list()
for f in files:
    tmp.append(task4.s().set(queue='task4'))

chain(task1.s(file_).set(queue='task1'), task2.s().set(queue='task2'),
      task3.s().set(queue='task3'), group(tmp)).delay()

我希望一堆task4s能够最终接收并处理从任务3返回的工作

提前致谢

1 个答案:

答案 0 :(得分:0)

更改:

CELERY_TASK_SERIALIZER = 'json'

要:

CELERY_TASK_SERIALIZER = 'pickle'

为我工作。