Python 芹菜组按顺序而不是并行运行任务

Python 芹菜组按顺序而不是并行运行任务,python,celery,Python,Celery,我正在学习芹菜群的功能 @celery_app.task def celery_task(): import time time.sleep(30) print('task 1') @celery_app.task def celery_task2(): import time time.sleep(10) print('task 2') @celery_app.task def test(): from datetime import

我正在学习芹菜群的功能

@celery_app.task
def celery_task():
    import time
    time.sleep(30)
    print('task 1')

@celery_app.task
def celery_task2():
    import time
    time.sleep(10)
    print('task 2')

@celery_app.task
def test():
    from datetime import datetime
    print(datetime.now())
    job = group(
        celery_task.s(),
        celery_task2.s()
    )
    result = job()
    result.get()
    print(datetime.now())

然而,当我从python控制台运行
test()
并在芹菜日志中查看它们时,似乎运行了task1,然后运行了task2

它不应该并行运行吗?整个
test()
函数需要30秒才能完成


要启动芹菜工人,我使用命令
cellery-A tasks worker-l=INFO

您确定整个
测试()花了30秒吗?如果是这样,我不明白问题出在哪里?如果它不是平行的-它必须需要30秒+10秒=40秒

这里有两件事:

  • 运行worker时使用
    --并发性
    标志,以便它可以处理多个任务。或者,使用多个辅助进程(运行两个进程):
    芹菜-任务工作者-l=INFO--concurrency=4
    (我不确定默认值是什么-我想这是一个)
  • 使用
    job.delay()或
    job异步运行画布。应用_async()
    运行异步

  • 哦,是的,谢谢。我没意识到我把密码设置为30秒而不是20秒