Trabajos
Visión general
Los trabajos son contenedores programados, que se activan ya sea por tiempo o por recursos.
Programación
Todas las programaciones tienen un componente basado en tiempo y otro basado en recursos. Debido a la naturaleza de diversas cargas de trabajo, el usuario puede decidir sobre la entidad que dispara la activación.
Programaciones principalmente basadas en tiempo
Las programaciones basadas en tiempo son programaciones fijas que requieren que un trabajo se ejecute dentro de un cierto intervalo. Estos trabajos solo toleran una cantidad mínima de retraso, por lo que el consumo de recursos es sólo un factor secundario para activar un trabajo.
Buenos ejemplos de programaciones basadas en tiempo son:
- un CronJob que revisa cada 5 minutos nuevas entradas en una base de datos
- un CronJob que revisa cada 15 minutos nuevos usuarios registrados
Programaciones principalmente basadas en recursos
Las programaciones basadas en recursos son programaciones flexibles que requieren que un trabajo se ejecute dentro de un rango de un intervalo. Estos trabajos pueden tolerar un horario más flexible para optimizar la disponibilidad y el consumo de recursos.
Buenos ejemplos de programaciones basadas en recursos:
- un trabajo que verifica un feed RSS, ejecutándose al menos una vez a la semana, como máximo una vez al día, dependiendo de las preferencias disponibles de recursos
- un trabajo que revisa pull-requests en Github y ejecuta diversas suites de pruebas, siempre que haya recursos disponibles, pero al menos una vez al día
Variables de entorno en tiempo de ejecución
| variable | configurable | descripción |
|---|---|---|
| DTZ_ACCESS_TOKEN | sí (la identidad puede cambiarse) | JWT generado desde el contexto que permite acceder a recursos dentro del contexto. |
| DTZ_CONTEXT_ID | no | Contexto DTZ en el que se está ejecutando la aplicación actual |