Jobs
Overview
Les jobs sont des conteneurs planifiés, qui se déclenchent soit sur une base temporelle, soit sur une base de ressources.
Scheduling
Tous les plannings comportent une composante temporelle et une composante basée sur les ressources. En raison de la nature des différentes charges de travail, l’utilisateur peut choisir l’entité déclenchante.
Primarily time-based schedules
Les plannings principalement temporels sont des plannings fixes qui requièrent qu’un job s’exécute dans un certain intervalle. Ces jobs ne tolèrent qu’un délai minimal, de sorte que la consommation des ressources n’est qu’un facteur secondaire dans la décision de déclencher un job.
De bons exemples de plannings principalement temporels sont :
- un CronJob qui vérifie toutes les 5 minutes les nouveaux enregistrements dans une base de données
- un CronJob qui vérifie toutes les 15 minutes les nouveaux utilisateurs enregistrés
Primarily resource-based schedules
Les plannings principalement basés sur les ressources sont des plannings flexibles qui requièrent qu’un job s’exécute dans une certaine plage d’un intervalle. Ces jobs peuvent tolérer un planning plus souple pour optimiser la disponibilité et la consommation des ressources.
De bons exemples de plannings principalement basés 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, selon les préférences de ressources disponibles
- un Job qui vérifie les pull requests GitHub et exécute diverses suites de tests, dès que des ressources sont disponibles, mais au moins une fois par jour
Environment Variables from the runtime
| variable | settable | description |
|---|---|---|
| DTZ_ACCESS_TOKEN | oui (l’identifiant peut être modifié) | JWT généré depuis le contexte qui permet d’accéder aux ressources dans ce contexte. |
| DTZ_CONTEXT_ID | non | Contexte DTZ dans lequel l’application courante s’exécute |