category: Containers title: Trabajos order: 150 description: “Una visión general de los trabajos en DownToZero, que son contenedores programados que pueden activarse en base al tiempo o a los recursos.”

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 el tiempo y otro basado en los recursos. Debido a la naturaleza de las distintas cargas de trabajo, el usuario puede decidir cuál es la entidad que desencadena la ejecución.

Programaciones principalmente basadas en el tiempo

Las programaciones basadas en el tiempo son fijas y requieren que un trabajo se ejecute dentro de un cierto intervalo. Esos trabajos sólo toleran una cantidad mínima de retraso, por lo que el consumo de recursos es sólo un factor secundario a la hora de desencadenar un trabajo.

Buenos ejemplos para programaciones basadas en el tiempo son:

  • un CronJob que comprueba cada 5 minutos si hay nuevos registros en una base de datos
  • un CronJob que comprueba cada 15 minutos si hay nuevos usuarios registrados

Programaciones principalmente basadas en recursos

Las programaciones basadas en recursos son más flexibles y requieren que un trabajo se ejecute dentro de un cierto rango de un intervalo. Esos trabajos pueden tolerar una programación más flexible para optimizar la disponibilidad y el consumo de recursos.

Buenos ejemplos para programaciones basadas en recursos

  • un Job que comprueba un feed RSS, ejecutándose al menos una vez a la semana, como máximo una vez al día, dependiendo de las preferencias de recursos disponibles
  • un Job que comprueba los pull requests de GitHub y ejecuta varias suites de pruebas siempre que haya recursos disponibles, pero al menos una vez al día

Variables de entorno del tiempo de ejecución

variable configurable descripción
DTZ_ACCESS_TOKEN sí (la identidad puede cambiarse) JWT generado en el contexto que permite acceder a los recursos dentro del mismo.
DTZ_CONTEXT_ID no Contexto DTZ en el que se está ejecutando la aplicación actual