Le problème: nous avons des tâches qui vont de quelques secondes à quelques minutes dans BackgroundRB à partir d'une application Rails. Mais que se passe-t-il lorsque nous déployons un nouveau code et redémarrons BackgroundRB lorsqu'il exécute une tâche? BackgroundRB ne semble pas ramasser de tâches 'prises' et je n'ai pas été capable de trouver quelque chose qui puisse récupérer ces tâches.Comment faire pour récupérer des travaux annulés (pris) en cas de crash de BackgroundRB?
Quelqu'un peut-il me dire si et comment BackgroundRB fournit des tâches de récupération qui étaient en cours d'exécution lorsque backgroundrb tombe en panne?
La raison pour laquelle je pose cette question est qu'à la fin du travail, un nouveau travail est mis en file d'attente à l'avenir à un moment arbitraire.
Je le ferais probablement en utilisant capistrano. – jonnii
Oui, le placer dans un initialiseur poserait le problème que toutes les tâches en cours d'exécution sont réinitialisées lorsque Passenger engendre un nouveau processus Ruby. Pas bon! Capistrano serait un meilleur moyen d'aller en combinaison avec le hook after_update_code. – Ariejan