Necesito leer de Rabbitmq y ejecutar tareas en paralelo usando Celery en un solo sistema.
[2014-12-30 15:54:22,374: INFO/Worker-1] ...
[2014-12-30 15:54:23,401: INFO/Worker-1] ...
[2014-12-30 15:54:30,878: INFO/Worker-1] ...
[2014-12-30 15:54:32,209: INFO/Worker-1] ...
[2014-12-30 15:54:33,255: INFO/Worker-1] ...
[2014-12-30 15:54:48,445: INFO/Worker-1] ...
[2014-12-30 15:54:49,811: INFO/Worker-1] ...
[2014-12-30 15:54:50,903: INFO/Worker-1] ...
[2014-12-30 15:55:39,674: INFO/Worker-1] ...
[2014-12-30 15:55:41,024: INFO/Worker-1] ...
[2014-12-30 15:55:42,147: INFO/Worker-1] ...
Parece que solo 1 trabajador está funcionando todo el tiempo ... es decir, uno tras otro en orden secuencial. ¿Cómo puedo configurar Celery para ejecutar varios trabajadores para que funcionen en paralelo?
He encontrado esto
http://docs.celeryproject.org/en/latest/reference/celery.html?highlight=parallel
Puede buscar primitivas de Canvas allí, puede ver cómo hacer grupos para ejecución paralela.
De lo contrario, una buena manera es ir al canal IRC y hacer preguntas especiales. Normalmente hay personas que lo saben muy bien y pueden ayudarlo.
fuente
Parece que su trabajador solo está ejecutando un solo proceso / hilo. Probablemente solo necesite agregar el argumento
--concurrency
o-c
al iniciar el trabajador para generar múltiples instancias de trabajador (paralelas).fuente