我在Django中有一个celery应用程序,其中我以特定的间隔定义了所有定期执行的明智任务。
我以5 concurrency
开始了芹菜工作者的工作
celery -A appname worker --loglevel=info -B -c 5
现在定义的每个任务都会定期执行,不会间隔时间,并且如果存在的活动任务超过5个,则会排队。
现在,我想定义一个任务,以便它在每次调用时都应执行。无论排队还是任何事情。
send_task('task_name',[],get_task_kwargs)
send_task
时,它都应立即执行,而不会在芹菜工作者的并发中排队。无法保证调用任务时任务将运行。您能做的最好的就是将此特定任务分配给它自己的队列。这样,只要前面没有其他相同类型的任务,它将始终开始执行。