Pregunta

Resque-Scheduler en mi aplicación en Heroku

Así que ... necesito uno que actúa solo trabajador y distinto como el planificador y muchos haciendo los puestos de trabajo.

Esta es la forma en que lo he hecho:
Tengo una aplicación Heroku distinto que no hace nada, pero tiene 1 trabajador resque-programador, corriendo 24/7, añadiendo Resque tareas al Redis DB de la "lejana" principal App.

(hago que el mapeo puestos de trabajo: el trabajo tarea a resque: planificador o resque: el trabajo )

Es ésta la mejor manera de hacerlo en la plataforma del Heroku; o lo estoy haciendo totalmente equivocado?

Gracias!

EDIT: aplicación mínima para la programación en Heroku: http://github.com/clmntlxndr/heroku-scheduler

ACTUALIZACIÓN:. Con la nueva pila de cedro en Heroku y Procfiles, es posible iniciar una tarea distinta para cada trabajador

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

¿Fue útil?

Solución

creo que leí mal su pregunta la primera vez. Me perdí la parte en la que el planificador de tareas requiere un rastrillo separado.

Sí, creo que la única manera de hacerlo es tener dos aplicaciones separadas Heroku, porque los trabajadores heroku sólo ejecutar rake jobs:work y, presumiblemente, sólo se puede asignar este sobre una de las tareas del rastrillo resque.

Usted podría intentar esto:

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

Pero tengo dudas acerca más sincero que realmente funciona correctamente con la forma en Heroku supervisa los procesos de trabajo y esas cosas. Además, vuelva a comprobar la sintaxis rastrillo allí; es sólo de la memoria. Sé que es posible especificar varias dependencias sin embargo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top