在芹菜中一一处理消息



我的launch.json中有这种芹菜配置(我在Linux Docker上运行它(:

{
    "name": "Python: Celery",
    "type": "python",
    "request": "launch",
    "module": "celery",
    "console": "integratedTerminal",
    "args": [
        "-A",
        "celery_worker",
        "worker",
        "-Q",
        "test pipeline *** collect BB",
        "--concurrency=1",
        "-l",
        "info",
        "-P",
        "solo",
    ]
},

我设置了文档中提到的"--concurrency=1"。

例如,当我向我的 RabbitMq 代理发送 4 条消息,激活工作线程,在处理消息的函数开头的条目中放置断点,然后在发送响应之前终止程序,我看到所有 4 条消息都是 RabbitMq 中的 Nack,我希望只有 1 条消息是 Nack

为了实现所需的行为,必须确保设置了两个设置:

task_acks_late = True
worker_prefetch_multiplier = 1

相关内容

  • 没有找到相关文章

最新更新