Avec Cloud Scheduler, vous pouvez configurer des unités de travail planifiées qui seront exécutées à des heures spécifiques ou à intervalles réguliers. Ces unités de travail sont communément appelées tâches Cron. Parmi les cas d'utilisation typiques, on peut citer l'envoi quotidien d'un e-mail de rapport, l'actualisation de certaines données mises en cache toutes les 10 minutes, ou encore la mise à jour d'informations de synthèse une fois par heure.
Chaque tâche Cron créée à l'aide de Cloud Scheduler est envoyée à une cible selon un calendrier spécifié, lequel permet de préciser quand le travail associé à la tâche doit être accompli. La cible doit correspondre à l'un des types suivants:
- Points de terminaison HTTP/HTTPS
- Sujets Pub/Sub
- Applications App Engine HTTP/S
Cloud Scheduler est conçu pour fournir "au moins une fois" la livraison ; Autrement dit, le job sera exécuté au moins une fois par exécution planifiée. Dans de rares cas, il est possible qu'une tâche s'exécute plusieurs fois en association avec une seule instance de la planification. Le code doit donc garantir qu'une exécution répétée n'entraîne pas d'effets secondaires néfastes. Vos cibles doivent être idempotentes.
Vous pouvez créer des tâches Cron à l'aide de la console Cloud ou l'outil de ligne de commande gcloud.
Régions acceptées par cible
Si votre cible est un point de terminaison HTTP/S ou un sujet Pub/Sub, Cloud Scheduler est disponible dans tous les services Google Cloud compatibles régions pour Cloud Scheduler.
Si votre cible est une application App Engine située dans votre projet en cours:
Une tâche Cloud Scheduler ciblant App Engine ne peut être créée que dans la région App Engine du projet.
Un projet Google Cloud ne peut contenir qu'une seule application App Engine. La région dont dépend l'application App Engine ne peut plus être modifiée une fois l'application créée.
App Engine est régional, ce qui signifie que l'infrastructure qui s'exécute si votre application est située dans une région spécifique. Si vous souhaitez distribuer le calcul et les tâches sur plusieurs régions, vous devez plutôt cibler un point de terminaison HTTP/S ou un sujet Pub/Sub.
Si vous n'utilisez pas App Engine en tant que cible, il est inutile de déployer une application App Engine, et vous pouvez désactiver application App Engine.
Stratégie de nouvelle tentative pour les tâches
Si une tâche Cloud Scheduler ne se termine pas correctement et qu'aucune confirmation n'est reçue du gestionnaire de tâches, une nouvelle tentative est effectuée avec un intervalle exponentiel entre les tentatives en fonction de la stratégie de nouvelle tentative configurée.
Vous pouvez configurer les paramètres qui déterminent le comportement de nouvelle tentative. Pour en savoir plus, consultez les pages suivantes : RetryConfig
.