Sul nuovo stack Cedar, non ci sono problemi con la generazione di più processi. Ogni dyno è una macchina virtuale e non ha limitazioni particolari tranne che nella memoria e nell'uso della CPU (circa 512 MB di memoria, credo, e 1 core della CPU). Seguendo le più recenti istruzioni di installazione per alcuni stack come Python si otterrà una configurazione con più processi (web server) immediatamente.
Il software installato sui web dynos può variare a seconda del buildpack che si sta utilizzando; se i sottoprocessi necessitano di un software speciale, potrebbe essere necessario raggrupparli insieme alla propria applicazione o (meglio) eseguire il proprio buildpack.
A questo punto, in genere, vorrei ricordare che eseguire attività asincrone su dinamiche di lavoro anziché su web dynos, con un adeguato sistema di code di attività, è fortemente incoraggiato, ma sembra che tu lo sappia già. Tieni presente che gli account con un solo banco virtuale (in genere questo significa account "gratuiti") avranno quel banco di prova dopo circa un'ora di non ricezione di richieste Web e qualsiasi processo in background eseguito sul banco in quel momento il tempo sarà necessariamente ucciso. Gli account con più web dynos non sono soggetti a questa restrizione.
fonte
2012-07-01 14:43:54
La soluzione alternativa per il dyno di inattività è che uno dei processi Web blocca atomicamente un oggetto di database, quindi controlla se il worker è in esecuzione e, in caso contrario, avviarlo. – okw