Panoramica di Cloud Functions

Che cosa sono le funzioni Google Cloud Functions?

Google Cloud Functions è un ambiente di esecuzione serverless per creare e connettere servizi cloud. Con Cloud Functions puoi scrivere funzioni semplici a uso specifico collegate a eventi emessi dalla tua infrastruttura e dai tuoi servizi cloud. La funzione viene attivata quando viene attivato un evento che viene controllato. Il codice viene eseguito in un ambiente completamente gestito. Non è necessario eseguire il provisioning di alcuna infrastruttura né preoccuparsi della gestione dei server.

Puoi scrivere funzioni Cloud Functions utilizzando vari linguaggi di programmazione supportati. Puoi eseguire la tua funzione in qualsiasi ambiente di runtime standard per uno dei linguaggi supportati, il che rende la portabilità e l'esecuzione di test in locale un gioco da ragazzi.

Cloud Functions offre due versioni del prodotto: Cloud Functions (1ª generazione.), la versione originale, e Cloud Functions (2nd gen), una nuova versione basata su Cloud Run e Eventarc per fornire un set di funzionalità avanzato. Per ulteriori informazioni, vedi Confronto tra le versioni di Cloud Functions.

Connetti ed estendi i servizi cloud

Cloud Functions fornisce un livello connettivo di logica che consente di scrivere codice per connettere ed estendere i servizi cloud. Ascolta e rispondi a un caricamento di file in Cloud Storage, a una modifica di log o a un messaggio in arrivo su un argomento Pub/Sub. Cloud Functions potenzia i servizi cloud esistenti e ti consente di affrontare un numero crescente di casi d'uso con logica di programmazione arbitraria. Le funzioni Cloud Functions hanno accesso alle credenziali dell'account di servizio Google e vengono quindi autenticate senza problemi dalla maggior parte dei servizi Google Cloud, incluso Cloud Vision e da molti altri. Inoltre, Cloud Functions è supportato da numerose librerie client di Google Cloud, che semplificano ulteriormente queste integrazioni.

Eventi e trigger

Gli eventi cloud sono eventi che accadono nel tuo ambiente cloud. Potrebbero essere modifiche ai dati di un database, file aggiunti a un sistema di archiviazione o una nuova istanza di macchina virtuale in fase di creazione.

Gli eventi si verificano indipendentemente dal fatto che tu scelga o meno di rispondere. Puoi creare una risposta a un evento con un trigger. Un trigger è una dichiarazione relativa all'interesse per un determinato evento o insieme di eventi. L'associazione di una funzione a un trigger consente di acquisire eventi e intervenire su di essi. Per saperne di più sulla creazione dei trigger e sull'associazione con le funzioni, consulta Trigger di Cloud Functions.

Serverless

Cloud Functions elimina il lavoro di gestione dei server, configurazione del software, aggiornamento dei framework e applicazione di patch ai sistemi operativi. Il software e l'infrastruttura sono completamente gestiti da Google, quindi ti basta aggiungere il codice. Inoltre, il provisioning delle risorse avviene automaticamente in risposta agli eventi. Ciò significa che una funzione può passare da alcune chiamate al giorno a molti milioni di chiamate senza il tuo intervento.

Casi d'uso

I carichi di lavoro asincroni (come l'ETL leggero) o le automazioni cloud (come l'attivazione di build di applicazioni) ora non hanno più bisogno di un proprio server o di uno sviluppatore che le gestisca manualmente. È sufficiente eseguire il deployment di una funzione associata all'evento desiderato.

La natura granulare e on demand di Cloud Functions lo rende anche il candidato perfetto per API e webhook leggeri. Inoltre, il provisioning automatico degli endpoint HTTP quando si esegue il deployment di una funzione HTTP fa sì che non sia necessaria una configurazione complessa come nel caso di altri servizi. Vedi la tabella seguente per altri casi d'uso comuni di Cloud Functions:

Caso d'uso Descrizione
Elaborazione dati / ETL Ascolta e rispondi agli eventi di Cloud Storage, ad esempio quando un file viene creato, modificato o rimosso. Elabora immagini, esegui la transcodifica di video, convalida e trasforma i dati e richiama qualsiasi servizio su internet da Cloud Functions.
Webhook Tramite un semplice trigger HTTP, rispondi agli eventi provenienti da sistemi di terze parti come GitHub, Slack, Stripe o da qualsiasi origine in grado di inviare richieste HTTP.
API leggere Crea applicazioni da frammenti di logica leggeri e a basso accoppiamento, rapidi da creare e scalabili all'istante. Le tue funzioni possono essere basate sugli eventi o richiamate direttamente tramite HTTP/S.
Backend mobile Utilizza la piattaforma mobile di Google per gli sviluppatori di app, Firebase, e scrivi il tuo backend mobile in Cloud Functions. Ascolta e rispondi agli eventi di Firebase Analytics, Realtime Database, Authentication e Storage.
IoT Immagina decine di migliaia di dispositivi che inseriscono flussi di dati in Pub/Sub, avviando così Cloud Functions per elaborare, trasformare e archiviare i dati. Cloud Functions ti consente di farlo in modo completamente serverless.

Passaggi successivi