2012-05-03 7 views

Antwort

37

Sie benötigen einen COUNT Umgebungsvariable hinzuzufügen und dann resque:work-resque:workers zu ändern. Zum Beispiel, 3 Arbeiter zu starten:

bundle exec env rake resque:workers QUEUE='*' COUNT='3' 
+0

, das funktioniert! danke – Stpn

+0

Das ist erstaunlich! Ich hatte immer 3-5 separate Konsolen-Registerkarten für jeweils einen Worker geöffnet. Jetzt kann ich sie alle in einem Tab bündeln. Vielen Dank! – ACIDSTEALTH

12

Der einzige Weg, verwende ich weiß, wie das zu tun, und ich denke, es ist ein großartiger Weg, es benutzt Foreman (dasselbe, was Heroku benutzt).

definieren Sie Ihre Prozesse in einer Datei mit dem Namen procfile wie:

web: bundle exec thin start -p $PORT 
worker: bundle exec rake resque:work QUEUE=* 
clock: bundle exec rake resque:scheduler 

Und dann können Sie Ihre App mit nur einem Befehl

foreman start 

starten Um mehr als einen Prozess von einem Start Geben Sie es wie folgt ein:

foreman start -c worker=2 

https://github.com/ddollar/foreman

http://blog.daviddollar.org/2011/05/06/introducing-foreman.html

+1

Webmasteru Arbeiter als auch verwenden, um dies zu starten: 'Vorarbeiter starten -c web = 1, Arbeiter = 2' –