我一直在努力使用 Celery 设置手动路由,但似乎无法将特定任务放入特定队列。到目前为止,这就是我所做的事情:
CELERY_QUEUES = {
"default": {
"binding_key": "default"},
"medium": {
"binding_key": "medium"},
"heavy": {
"binding_key": "heavy"},
}
定义如下的路线
CELERY_ROUTES = ({ "tasks.some_heavy_task": {
"queue": "heavy",
"routing_key": "tasks.heavy"
}}, )
守护进程开始像
celeryd -l INFO -c 3 -Q heavy
但是,“some_heavy_task”永远不会运行。当我删除路由并且只有一个默认队列时,我可以让它们运行。我在这里做错了什么,有什么建议吗?