Si vous souhaitez exécuter du code régulièrement, comme une tâche cron, vous pouvez utiliser Cloud Scheduler de Google Cloud Platform pour exécuter automatiquement des fonctions Cloud sans serveur à des intervalles de temps fixes, sans utiliser de serveurs réels.
Qu'est-ce que Cloud Scheduler?
Cloud Scheduler se présente comme "Managed Cron as a Service". Il vous permet de planifier des tâches à l'aide de la syntaxe cron. Cependant, il ne remplace que le composant de planification de cron. Cloud Scheduler n'est pas un service de calcul, et il ne peut envoyer que des requêtes HTTP ou envoyer des messages pub / sub, donc à lui seul, sa portée est assez limitée.
L'une des applications les plus utiles du planificateur est de déclencher Fonctions cloud à intervalles réguliers. Cloud Functions exécute du code sans serveur, à l'aide de divers environnements d'exécution tels que JavaScript avec Node, Python ou Java. Vous pouvez configurer Cloud Functions pour déclencher des notifications Pub / Sub, que Cloud Scheduler peut envoyer, de sorte que vous vous retrouvez avec un système dans lequel vous pouvez exécuter du code sans serveur régulièrement à l'aide de la syntaxe cron.
Si le code que vous devez exécuter doit se produire sur un serveur spécifique, la meilleure option est toujours d'utiliser simplement cron local pour exécuter les scripts dont vous avez besoin. Cependant, si vous pouvez créer un script avec JavaScript / Python et que vous ne vous souciez pas de l'environnement d'exécution de la fonction, Cloud Functions le gérera bien sans que vous ayez à configurer un serveur.
Configuration d'une fonction programmée
Dirigez-vous vers le Console Cloud Functions pour configurer une fonction. Vous n'avez pas besoin de créer une nouvelle fonction, car vous pouvez simplement modifier une fonction existante pour exécuter les messages Pub / Sub.
Donnez-lui un nom, choisissez la quantité de RAM à lui allouer et basculez-le sur "Cloud Pub / Sub" comme déclencheur.
Vous devrez sélectionner ou créer un sujet Pub / Sub auquel la fonction pourra s’abonner.
Donnez-lui un nom, puis cliquez sur "Créer un sujet".
Une fois que cela est fait, vous pouvez importer votre code, soit en le collant en ligne, soit en important un zip, soit en associant un référentiel Cloud Source.
Rendez-vous sur la console Cloud Scheduler pour créer la tâche cron.
Donnez-lui un nom et définissez la fréquence à l'aide de la syntaxe cron. Vous pouvez lire notre guide pour cron ou utiliser cet outil en ligne pour vous aider avec la planification. La syntaxe générale est:
minute heure jour mois jour de la semaine
Définissez la cible sur Pub / Sub et entrez le nom de rubrique que vous avez créé pour la fonction.
La fonction devrait maintenant s'exécuter automatiquement, mais vous pouvez cliquer sur «Exécuter maintenant» dans Cloud Scheduler pour la tester. Vous pouvez également afficher les journaux des exécutions précédentes à partir de ce panneau.
Si la fonction ne s’exécute pas correctement, vérifiez les journaux de la fonction Cloud pour vous assurer qu’elle répond aux demandes. S'il reçoit des demandes, il s'agit probablement d'une erreur avec votre code, et si ce n'est pas le cas, il s'agit probablement d'une erreur ou d'une faute d'orthographe dans le sujet Pub / Sub.