Bonjour,
Nos projets internes deviennent de plus en plus dépendants les uns des autres : certains récupèrent des données, d'autres compilent ces données, d'autres les analysent, d'autres les exportent, etc...
Du coup certains process sont bloquants pour que d'autres puissent démarrer (bien entendu uniquement si ce dernier n'a pas rencontré de problème).
J'aimerai savoir comment vous vous gérez ce genre de problématique de scheduler gérant les dépendances entre plusieurs process sur potentiellement plusieurs machines ?
- vous gérez simplement via cron
- vous testez si une ressource/notif/info quelconque soit ok et vous bouclez en sleepant tant que ce n'est pas dispo (avec des gardes fous pour éviter que ça sleep à l'infini)
- vous avez développé votre propre solution ?
- autre ?
En cherchant un peu, voici des solutions qui ont l'air pas mal (avec des jolies interfaces pour suivre ce qui est lancé/
fail/
done) - les avez vous testé?
- http://airbnb.github.io/chronos/ (une sorte de
cron un peu plus poussé pour gérer de la dépendance avec une GUI)
-
https://github.com/spotify/luigi (la
sollution home
made de
spotify)
J'ai pu lire aussi que certains utilisaient Jenkins pour faire ça, mais ça me semble très lourd.
On se dirige vers une solution en interne mais j'aimerai bien avoir votre retour et échanger sur comment vous faîtes de votre côté :)