Présentation de Cloud Functions

Qu'est-ce que Google Cloud Functions ?

Google Cloud Functions est un environnement d'exécution sans serveur servant à créer et connecter des services cloud. Avec Cloud Functions, vous pouvez écrire des fonctions simples à application unique qui sont associées à des événements émis par votre infrastructure et vos services cloud. Une fonction est déclenchée quand un événement surveillé est lancé. Votre code s'exécute dans un environnement entièrement géré. Vous n'avez pas à vous préoccuper du provisionnement de vos infrastructures ni de la gestion des serveurs.

Vous pouvez écrire des fonctions Cloud à l'aide des environnements d'exécution JavaScript, Python 3, Go ou Java sur Google Cloud Platform. Vous pouvez utiliser et exécuter votre fonction dans n'importe quel environnement Node.js standard (Node.js 10 ou 12), Python 3 (Python 3.7 ou 3.8), Go (Go 1.11 ou 1.13) ou Java (Java 11), ce qui facilite la portabilité et les tests en local.

Connecter et étendre des services cloud

Cloud Functions fournit une couche conjonctive de logique qui vous permet d'écrire du code pour connecter et étendre des services cloud. Écoutez des événements, tels qu'une importation de fichier sur Cloud Storage, une modification apportée à un journal ou un message entrant sur un sujet Pub/Sub, et répondez-y. Cloud Functions étend les services cloud existants et vous permet de gérer de nombreux cas d'utilisation avec une logique de programmation arbitraire. Cloud Functions a accès aux identifiants du compte de service Google et est ainsi authentifié en toute transparence auprès de la majorité des services Google Cloud, y compris Cloud Vision. En outre, les fonctions Cloud Functions sont compatibles avec de nombreuses bibliothèques clientes pour faciliter davantage leur intégration.

Événements et déclencheurs

Les événements du cloud sont des choses qui se produisent dans votre environnement cloud. Il peut s'agir de modifications apportées aux données d'une base de données, de l'ajout de fichiers à un système de stockage ou de la création d'une instance de machine virtuelle.

Des événements se produisent que vous choisissiez d'y répondre ou non. Vous pouvez créer une réponse à un événement avec un déclencheur. Un déclencheur vous permet d'indiquer que vous souhaitez surveiller un ou plusieurs événements. En associant une fonction à un déclencheur, vous pouvez détecter des événements et agir en conséquence. Pour en savoir plus sur la création de déclencheurs et leur association à des fonctions, consultez la page Événements et déclencheurs.

Sans serveur

Grâce à Cloud Functions, vous n'avez plus besoin de gérer des serveurs, de configurer des logiciels, de mettre à jour des frameworks ni d'appliquer des correctifs aux systèmes d'exploitation. Comme le logiciel et l'infrastructure sont entièrement gérés par Google, il vous suffit d'ajouter du code. De plus, les ressources sont automatiquement provisionnées en réponse aux événements. Cela signifie qu'une fonction peut passer de quelques appels par jour à plusieurs millions, sans aucune intervention de votre part.

Cas d'utilisation

Les charges de travail asynchrones, telles que les opérations ETL légères, et les automatisations cloud, comme le déclenchement de versions d'application, ne nécessitent plus leur propre serveur, ni de développeur pour fonctionner. Il vous suffit de déployer une fonction Cloud Functions associée à l'événement de votre choix, et vous avez terminé.

En raison de son exécution précise et à la demande, Cloud Functions est également idéal pour les API et les webhooks légers. En outre, grâce au provisionnement automatique de points de terminaison HTTP lors du déploiement d'une fonction HTTP, aucune configuration compliquée n'est requise, comme c'est le cas avec certains autres services. Consultez le tableau suivant pour découvrir d'autres cas d'utilisation courants de Cloud Functions :

Cas d'utilisation Description
Traitement des données/ETL Écoutez des événements Cloud Storage comme la création, la modification ou la suppression d'un fichier, et répondez-y. Traitez des images, effectuez du transcodage vidéo, validez ou transformez des données, et appelez un service sur Internet avec une fonction Cloud Functions.
Webhook Via un simple déclencheur HTTP, vous pouvez répondre à des événements provenant de systèmes tiers comme GitHub, Slack et Stripe, ou provenant d'éléments pouvant envoyer des requêtes HTTP.
API légères Concevez des applications à partir de bits de logique légers et faiblement couplés, qui peuvent être créés rapidement et évoluer instantanément. Vos fonctions peuvent être déclenchées par des événements ou appelées directement via HTTP/S.
Backend mobile Utilisez Firebase, la plate-forme mobile Google pour les développeurs d'applications, et écrivez votre backend mobile avec Cloud Functions. Écoutez les événements provenant de Firebase Analytics, Realtime Database, Authentication et Storage, et répondez-y.
IoT Imaginez des dizaines ou des centaines de milliers d'appareils diffusant des données dans Pub/Sub et lançant ainsi Cloud Functions pour traiter, transformer et stocker les données. Cloud Functions vous permet de le faire dans un environnement entièrement sans serveur.

Étape suivante