在 Celery 文档的并发部分中,它指出:
... Eventlet 和 prefork 工作人员的混合,并根据兼容性或最有效的方式路由任务
来源:http ://celery.readthedocs.org/en/latest/userguide/concurrency/eventlet.html#concurrency-eventlet
这意味着可以让一个工作人员使用 gevent/eventlet 池实现,而另一个使用 prefork 池。
可以在创建多个工作人员时指定池实现celery multi
:
celery -A proj multi start 2 -P gevent -c 1000
这启动了 2 个 gevent 工作人员,但是我如何在使用时基于每个工作人员指定池实现celery multi
,以便一个工作人员使用 gevent 池而另一个使用 prefork?
celery multi
文档没有提到任何关于这个特定问题的内容,源代码 ( )celery.bin.multi
并没有真正表明这是可能的(除非我误读/误解了代码)。