我有一些任务要顺序运行,当它们完成(成功或失败)时,我想执行另一系列的顺序任务。如何设计芹菜流?
我的代码:
supplier_crawler_chain = [
start_supplier_crawl.si(
str(supplier_info['_id']),
supplier_info['job_supplier_urls'],
supplier_info['feed_source'],
supplier_info['job_supplier_name'],
) for supplier_info
in supplier_info_list
]
supplier_crawler_chain.append(
chain(*[db_to_xml_task_worker.si(str(feed['_id'])) for feed in active_partner_list])
)
chain(*supplier_crawler_chain).delay()
我的目标是,依次运行所有start_supplier_crawl
个任务,并在它们全部完成(成功/失败)后,依次运行所有db_to_xml_task_worker
个任务。
但是我当前的代码正在并行运行它们。
如果相关:
每个start_supplier_crawl
内都有一个chord
,效果很好。