J’ai un soucis de programmation (au sens de planification) :
Pas moyen de trouver de la documentation (ni même un algorithme) pour lisser dans le temps la planification de tâches à exécuter.
Contexte / Scénario :
L’outil permet de gérer et d’exécuter des tâches de manière périodiques.
Les périodicités possibles sont :
- Toutes les heures
- Tous les jours
- Toutes les semaines
- Tous les mois
Après cela, un script va se charger d’exécuter ce qu’il faut exécuter (si le moment est le bon).
L’utilisateur créer et rajoute une tâche, il veut qu’elle soit exécutée toutes les semaines (se fiche donc du jour de la semaine, de l’heure et de la minute d’exécution exacte)
Un autre utilisateur peut rajouter une tâche pour qu’elle s’exécute tous les mois (se fiche donc du jour du mois, du jour de la semaine, de l’heure et de la minute d’exécution exacte)
Comment faire pour la planifier au bon endroit en lissant le moment d’exécution de façon à ce que le nombre total de tâche à faire soit à peu près constante le long de la journée (pour chaque heure) et le long de la semaine (pour chaque jour) et le long du mois ?
Le but est d’éviter une surcharge de travail pour l’exécution des tâches à certaines périodes et des trous à d’autres.
Je pense que le sujet a déjà dû être abordé quelque part non ?