我正在尝试实现一个芹菜任务,该任务会调用一个大约需要10-15秒才能执行的API。调用API后,我需要使用http-get轮询结果。现在我想每2秒轮询一次结果,这意味着工人将在2秒内自由。我能以某种方式告诉芹菜该特定工人在那段时间内是否有空? 如果我没有说清楚,请告诉我。
答案 0 :(得分:1)
有两种方法可以延迟芹菜任务。
1st:
>>> tomorrow = datetime.now() + timedelta(days=1)
>>> add.apply_async(args=[10, 10], eta=tomorrow)
2nd:
>>> result = add.apply_async(args=[10, 10], countdown=3)
>>> result.get() # this takes at least 3 seconds to return
来源:https://ask.github.io/celery/userguide/executing.html#eta-and-countdown