我不太了解python rq,我刚开始学习它。
有一个 task_a 需要 3 分钟才能完成处理。
@job
def task_a():
time.sleep(180)
print('done processing task_a')
def call_3_times():
task_a.delay()
task_a.delay()
task_a.delay()
据我观察,task_a 会从队列中一一执行。第一次通话结束后,继续进行下一次通话,以此类推。总时间为 3 分钟 x 3 = 9 分钟
如何使每个函数并行执行task_a
?call_3_times
所以花费的时间少于 9 分钟,可能是 3 分 10 秒(只是一个例子,它可能会比这更快)。
可能我需要生成 3 个 rq 工作人员,是的,它确实工作得更快并且像并行一样。但是如果我需要调用它 2000 次怎么办。我应该产生 2000 个 rq 工人吗?我的意思是,必须有更好的方法来做到这一点。