Sommaire

Jobs en continu

Les tâches planifiées ou les travaux à faire en décalé font partie intégrante du cycle de vie d’une application ou d’une architecture. Le défi majeur est d’arriver à centraliser l’ensemble des tâches au sein d’une même plateforme. Il n’est plus concevable d’avoir autant de serveurs de tâches qu’il y a d’applications ou de systèmes, car leur maintenance deviendrait vite laborieuse et difficilement gérable.

Centraliser les tâches de vos applications au sein d’une même application a plusieurs avantages. Cela permet d’une part de faciliter le suivi des travaux et de pouvoir relancer un travail s’il ne s’est pas exécuté ou est en erreur. D’autre part, le rapport d’exécution peut aussi nourrir notre serveur de logs. Cela permettrait d’effectuer des analyses plus poussées et de détecter si les tâches de fond sont souvent en erreur, et si oui pourquoi.

Si le dashboard est sous format web, il devient aussi possible de relancer une tâche importante depuis un terminal ou son téléphone portable.

Nous pourrions citer à titre d’exemple le serveur Hangfire qui est aussi un projet open source et disponible sur GitHub.