Acerca de Cloud Scheduler

Con Cloud Scheduler, puedes configurar unidades de trabajo programadas para que se ejecuten en horarios definidos o a intervalos regulares. Estas unidades de trabajo se conocen comúnmente como trabajos cron. Los casos prácticos típicos pueden incluir enviar un informe a diario por correo electrónico, actualizar algunos datos en caché cada 10 minutos o actualizar información de resumen cada una hora.

Cada trabajo cron creado con Cloud Scheduler se envía a un destino según un programa especificado. Allí se realiza el trabajo para la tarea. El destino deber ser uno de los siguientes tipos:

Cloud Scheduler está diseñado para proporcionar una entrega “al menos una vez”. Esto significa que el trabajo se ejecutará al menos una vez por ejecución programada. En ciertas circunstancias excepcionales, es posible que un trabajo se ejecute varias veces en asociación con una sola instancia de la programación, por lo que tu código debe garantizar que la ejecución repetida no tendrá efectos secundarios dañinos. Tus destinos deben ser idempotentes.

Puedes crear trabajos cron con Cloud Console o la herramienta de línea de comandos de gcloud.

Regiones admitidas por destino

Si tu destino es un extremo HTTP/S o un tema de Pub/Sub, Cloud Scheduler está disponible en todas las regiones Google Cloud admitidas para Cloud Scheduler.

Si tu destino es una aplicación de App Engine ubicada en tu proyecto actual, ten en cuenta lo siguiente:

  • Un trabajo de Cloud Scheduler orientado a App Engine solo se puede crear en la región de App Engine del proyecto.

  • Un Google Cloud proyecto solo puede contener una aplicación de App Engine, y la región donde se encuentra la aplicación de App Engine no se puede cambiar una vez que la aplicación fue creada.

  • App Engine es regional , lo que significa que la infraestructura que ejecuta tu app se ubica en una región específica. Si deseas distribuir la capacidad de procesamiento y los trabajos en varias regiones, debes orientar un extremo HTTP/S o un tema de Pub/Sub.

  • Si no usas App Engine como destino, no necesitas implementar una aplicación de App Engine y puedes inhabilitar cualquier aplicación de App Engine existente.

Política de reintentos de trabajos

Si un trabajo de Cloud Scheduler no se completa correctamente y no se recibe un acuse de recibo del controlador de trabajos, se reintenta con una retirada exponencial según su política de reintentos configurada.

Puedes configurar los parámetros que determinan el comportamiento de reintento. Para obtener más información, consulta Reintenta trabajos.

Anulación de duplicación de solicitudes de trabajo

Cloud Scheduler provides encabezados que pueden ayudar con la anulación de duplicación de solicitudes de trabajo, lo que hace que el controlador de solicitudes sea idempotente. Puedes identificar de forma única una solicitud de trabajo con su nombre y el encabezado X-CloudScheduler-ScheduleTime. Este encabezado contiene la hora de invocación programada original y permanece constante en los intentos de reintento.