Jobs
Aperçu
Les jobs sont des conteneurs planifiés, qui se déclenchent soit sur une base temporelle, soit sur une base de ressources.
Planification
Toutes les planifications ont une composante basée sur le temps et une composante basée sur les ressources. En raison de la nature des différentes charges de travail, l’utilisateur peut décider de l’entité déclenchante.
Planifications principalement basées sur le temps
Les planifications basées sur le temps sont des horaires fixes qui nécessitent qu’un job s’exécute dans un certain intervalle. Ces jobs tolèrent seulement un délai minimal, donc la consommation des ressources est un facteur secondaire pour déclencher un job.
De bons exemples de planifications basées sur le temps sont :
- un CronJob qui vérifie toutes les 5 minutes la présence de nouveaux enregistrements dans une base de données
- un CronJob qui vérifie toutes les 15 minutes les nouveaux utilisateurs enregistrés
Planifications principalement basées sur les ressources
Les planifications basées sur les ressources sont des plannings souples qui nécessitent qu’un job s’exécute dans une certaine plage d’un intervalle. Ces jobs peuvent tolérer une planification plus flexible afin d’optimiser la disponibilité et la consommation des ressources.
De bons exemples de planifications basées sur les ressources :
- un Job qui vérifie un flux RSS, s’exécutant au moins une fois par semaine, au plus une fois par jour, en fonction des préférences de ressources disponibles
- un Job qui vérifie les pull requests GitHub et exécute diverses suites de tests, chaque fois que les ressources sont disponibles, mais au moins une fois par jour
Variables d’environnement issues du runtime
variable | configurable | description |
---|---|---|
DTZ_ACCESS_TOKEN | oui (l’identité peut être modifiée) | JWT généré à partir du contexte qui permet d’accéder aux ressources dans ce contexte. |
DTZ_CONTEXT_ID | non | Contexte DTZ dans lequel l’application actuelle s’exécute |