tengo 2 tipo de tareas: Tipo 1 - Algunas de las tareas de alta prioridad pequeños. Tipo2 - Muchas tareas pesadas con menor prioridad.Apio - ejecutar diferentes trabajadores en un servidor
Inicialmente tenía una configuración simple con enrutamiento predeterminado, no se usaron claves de enrutamiento. No fue suficiente: a veces todos los trabajadores estaban ocupados con tareas de Type2, por lo que la Tarea1 se retrasó. teclas de enrutamiento que he añadido:
CELERY_DEFAULT_QUEUE = "default"
CELERY_QUEUES = {
"default": {
"binding_key": "task.#",
},
"highs": {
"binding_key": "starter.#",
},
}
CELERY_DEFAULT_EXCHANGE = "tasks"
CELERY_DEFAULT_EXCHANGE_TYPE = "topic"
CELERY_DEFAULT_ROUTING_KEY = "task.default"
CELERY_ROUTES = {
"search.starter.start": {
"queue": "highs",
"routing_key": "starter.starter",
},
}
Así que ahora tengo 2 colas de tareas - con alta y baja prioridad.
El problema es - cómo iniciar 2 apéndices con diferentes configuraciones de simultaneidad?
Previamente apio se utilizó en modo demonio (de acuerdo to this), se requiere por lo que sólo inicio de /etc/init.d/celeryd start
, pero ahora tengo que correr 2 celeryds diferentes con diferentes colas y concurrencia. ¿Cómo puedo hacerlo?
¿Cómo puedo especificar nombre de los trabajadores ?? – holms