【发布时间】:2015-05-13 11:22:05
【问题描述】:
在 8 核的环境下,celery 默认应该能够并行处理 8 个传入的任务。但有时当收到新任务时,celery 会将它们置于一个长时间运行的进程之后。
我使用默认配置,让一名工作人员从一个队列中消费。
celery -A proj worker --loglevel=INFO --concurrency=8
我的理解是错误的吗,一个并发 8 的 worker 可以并行处理一个队列中的 8 个任务?
如何设置 celery 以防止上述此类行为?
【问题讨论】:
-
我也经历过同样的行为。在谷歌搜索时,我发现this question 看起来很相似。也许那里描述的解决方案有帮助?
-
我可以看到预取是如何导致这种行为的。
标签: python concurrency celery