2014-06-17 8 views
5

Sto utilizzando una gemma senza lavoro per scalare i dipendenti in coda relativi al lavoro in ritardo. In questo processo, devo ridimensionare due diversi tipi di lavoratori usando senza lavoro. Il mio Procfile è il seguente.Operatori specifici su scala che utilizzano una gemma senza lavoro in Heroku

worker: QUEUE=monthly_reports rake jobs:work 
worker2: QUEUES=Dashboard_Reports,pulling rake jobs:work 

Senza lavoro ridimensiona automaticamente il primo operatore ma non il mio worker2. Qualcuno può suggerire come ridimensionare entrambi i lavoratori usando senza lavoro

+0

heroku config: aggiungi WORKLESS_MAX_WORKERS = 10 prova l'inversione di entrambi e controlla – santosh

+0

Ho usato questa opzione ma ridimensionerà solo i lavoratori massimi fino a 10 solo ma non il lavoratore specifico di dyno. Voglio dire, il mio bisogno non è quello di aumentare i dynos, ma di eseguire i dynos per lavoratore – pramod

risposta

0

Quello che vuoi fare non è possibile con il modo in cui la gemma senza lavoro è attualmente scritta. Se dai un'occhiata allo code vedrai che il codice di ridimensionamento ha il tipo di processo 'lavoratore' hardcoded. È possibile modificarlo per supportare un diverso tipo di processo tramite una variabile di ambiente, ma non funzionerebbe ancora con più tipi di processo.

+0

Puoi fornire qualche alternativa? – pramod

+0

Sfortunatamente non conosco una facile alternativa alla scalabilità automatica di più tipi di processi basati su code di lavoro ritardate variabili. C'è qualche ragione per cui non è possibile eseguire tutte le code come l'operatore principale? –

Problemi correlati