Frage

Ich füge Resque-Scheduler in meiner app auf Heroku

So ... Ich brauche man allein und verschiedene Arbeiter, die als die Planer und viele der Arbeitsplätze zu tun.

Dies ist, wie ich es getan habe:
Ich habe eine deutliche Heroku App, die nichts tut, sondern hat 1 resque-Scheduler Arbeiter, läuft 24/7 und fügte hinzu, Resque Aufgaben der Redis DB des "fernen" Haupt App.

(ich weiß, dass die Zuordnung Jobs: Arbeit Aufgabe resque: Scheduler oder resque: Arbeit )

Ist dies der beste Weg, um es auf der Plattform Heroku zu tun; oder bin ich es total falsch?

Danke!

EDIT: minimal app für die Zeitplanung auf Heroku: http://github.com/clmntlxndr/heroku-scheduler

UPDATE:. Mit dem neuen CEDAR-Stack auf Heroku und Procfiles, ist es möglich, eine bestimmte Aufgabe für jeden Arbeitnehmer starten

web:        bundle exec rails server -p $PORT
scheduler:  bundle exec rake resque:scheduler
worker:     bundle exec rake jobs:work

http://devcenter.heroku.com/articles/procfile

War es hilfreich?

Lösung

Ich glaube, ich falsch verstehe Ihre Frage das erste Mal. Ich habe den Teil, in dem Scheduler eine separate Rake Aufgabe erfordert.

Ja, ich glaube, der einzige Weg, es zu tun ist, zwei separate Heroku Anwendungen zu haben, weil Heroku Arbeiter nur rake jobs:work laufen und vermutlich können Sie nur diese Karte auf eine der resque Rake Aufgaben.

Sie könnten versuchen, diese:

desc "Alias for resque:work (To run workers on Heroku)"
task "jobs:work" => ["resque:work", "resque:scheduler"]

Aber ich habe aufrichtig Zweifel, dass tatsächlich richtig mit Arbeit, wie Heroku Arbeitsprozesse und Sachen überwacht. Auch überprüfen Sie die Harke Syntax gibt; es ist nur aus dem Speicher. Ich weiß, es ist möglich, obwohl mehrere Abhängigkeiten angeben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top