È possibile impostare la concorrenza (il numero di lavoratori simultanei) su un livello per attività in Celery? Sto cercando qualcosa di più raffinato che CELERYD_CONCURRENCY
(che imposta la concorrenza per l'intero daemon).Celery: limiti di concorrenza per attività (numero di lavoratori per attività)?
Lo scenario di utilizzo è: ho un singolo celerlyd che esegue diversi tipi di attività con caratteristiche di prestazione molto diverse: alcune sono veloci, altre molto lente. Per alcuni vorrei fare il maggior numero possibile il più velocemente possibile, per altri vorrei assicurarsi che solo una istanza sia in esecuzione in qualsiasi momento (ad esempio, la concorrenza di 1).
Grazie 0x00mh. Quindi posso definire la concorrenza sulle code, ma non sulle attività. E credo che questo significhi che sto iniziando diversi demoni di sedani. Quindi immagino che questo significhi che non c'è modo di impostare la concorrenza per-task senza usare un demone separato? – Parand
CELERYD_CONCURRENCY definisce il numero di processi (processi di lavoro) da avviare. I processi di lavoro consumano i messaggi dal broker in modo indipendente. Il messaggio contiene il nome dell'attività da eseguire. – mher