【问题标题】:how to loop over and create multiple django celery tasks如何循环并创建多个 django celery 任务
【发布时间】:2016-04-21 04:06:54
【问题描述】:

我有 3 名员工,我正在尝试创建多个这样的 celery 任务:

for e in employees:
     res1 = escalate.apply_async((e.id), countdown=3)
     print res1.id

这应该创建 3 个任务,但它只创建 1 个。

每个 id 打印出来: dc553662-283e-46e5-b811-7c1f5ed08d2d be7043bc-02a1-4641-b8e6-c230bf1d7325 5b88e6cc-8514-4e80-8f4f-eb8b05f3625b

celery 是否存在不允许我以这种方式创建多个任务的限制?如果没有,如何循环创建多个任务?

【问题讨论】:

  • 你怎么知道它只创建了 1 个 celery 任务?你能在每次通话后打印res1.id吗?
  • 我打印所有任务,每个任务都有一个 ID。这意味着什么?如何制作具有 id 但不触发的任务?
  • 您有多种选择。查看此帖子stackoverflow.com/questions/14614441/…

标签: django celery django-celery


【解决方案1】:

您可以将这些员工 ID 作为列表传递给任务,在“升级”任务中对其进行迭代并执行您想要执行的任何功能。这就是我的想法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-27
    • 1970-01-01
    • 2019-05-21
    • 2019-02-21
    • 1970-01-01
    • 2013-03-25
    • 2012-12-17
    相关资源
    最近更新 更多