Panoramica di Cloud Run Functions
Che cosa sono le funzioni Cloud Run?
Cloud Run è un ambiente di esecuzione serverless per la creazione e la connessione di servizi cloud. Con le funzioni Cloud Run, puoi scrivere funzioni a uso specifico che vengono collegate agli eventi generati dall'infrastruttura e dai servizi cloud. La funzione viene attivata quando viene attivato un evento controllato. Il codice viene eseguito in un ambiente completamente gestito in Cloud Run. Non è necessario eseguire il provisioning di un'infrastruttura né preoccuparsi di gestire un server.
Puoi scrivere funzioni Cloud Run utilizzando diversi linguaggi di programmazione supportati. Puoi eseguire la funzione in qualsiasi ambiente di runtime standard per una delle lingue supportate, quindi sia la portabilità che i test locali sono estremamente semplici.
Connetti ed estendi i servizi cloud
Le funzioni Cloud Run forniscono un livello di connettività logica che consente di scrivere codice per connettere ed estendere i servizi cloud. Puoi ascoltare e rispondere a un caricamento di file in Cloud Storage, a una modifica del log o a un messaggio in arrivo per un argomento Pub/Sub. Cloud Run functions potenzia i servizi cloud esistenti e consente di gestire un numero sempre maggiore di casi d'uso con qualsiasi logica di programmazione. Le funzioni Cloud Run hanno accesso alle credenziali dell'account di servizio e vengono quindi autenticate senza problemi dalla maggior parte dei servizi Google Cloud, tra cui Cloud Vision e molti altri. Inoltre, le funzioni Cloud Run sono supportate da numerose librerie client Google Cloud, che semplificano ulteriormente queste integrazioni.
Eventi e trigger
Gli eventi cloud sono cose che accadono nel tuo ambiente cloud. Possono 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 utilizzando un trigger. Un attivatore è una dichiarazione che indica il tuo interesse per un determinato evento o per una serie di eventi. L'associazione di una funzione a un trigger ti consente di acquisire gli eventi e di intervenire in relazione agli stessi. Per ulteriori informazioni sulla creazione dei trigger e su come associarli alle funzioni, consulta Trigger delle funzioni Cloud Run.
Serverless
Cloud Run 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 Cloud Run, quindi devi solo 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 diversi milioni di chiamate senza alcun intervento da parte tua.
Configurabile
Le funzioni vengono integrate nei container e di cui viene eseguito il deployment come servizi su Cloud Run. In questo modo avrai accesso e controllo completi sul comportamento della funzione. Consulta la documentazione di Cloud Run per esplorare le opzioni di configurazione del servizio, ad esempio:
- Gestione dell'trigger multi-evento nelle funzioni
- Uscita VPC diretta ad alte prestazioni
- La possibilità di montare volumi Cloud Storage
- Runtime dei linguaggi gestiti da Google, con aggiornamenti di sicurezza automatici sulle immagini di base
- Suddivisione del traffico e controllo delle revisioni
- Supporto di Prometheus e OpenTelemetry gestiti con container sidecar
Casi d'uso
I carichi di lavoro asincroni (ad esempio ETL leggero) o le automazioni cloud (ad esempio l'attivazione di build di applicazioni) ora non hanno più bisogno di un proprio server o di uno sviluppatore per gestirli manualmente. Esegui il deployment di una funzione associata all'evento che ti interessa e il gioco è fatto.
Grazie alla sua natura granulare e on demand, Cloud Run è anche il candidato perfetto per le API e i webhook leggeri. Inoltre, poiché viene eseguito automaticamente il provisioning degli endpoint HTTP quando si esegue il deployment di una funzione HTTP, non è necessaria alcuna configurazione complessa come nel caso di alcuni altri servizi. Vedi la tabella che segue per altri casi d'uso comuni di Cloud Run Functions:
Caso d'uso | Descrizione |
---|---|
Elaborazione dati / ETL | Monitora 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 dalle tue funzioni Cloud Run. |
Webhook | Utilizzando un attivatore HTTP, puoi rispondere agli eventi provenienti da sistemi di terze parti come GitHub, Slack, Stripe o da qualsiasi altra origine in grado di inviare richieste HTTP. |
API leggere | Scrivi applicazioni da frammenti di logica leggeri ad a basso accoppiamento, veloci da creare e immediatamente scalabili. Le tue funzioni possono essere basate sugli eventi o richiamate direttamente tramite HTTP/S. |
Backend mobile | Utilizza Firebase, la piattaforma mobile di Google per gli sviluppatori di app, e scrivi il tuo backend mobile nelle funzioni Cloud Run. Monitora 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, quindi avviano funzioni Cloud Run per elaborare, trasformare e archiviare i dati. Le funzioni Cloud Run ti consentono di farlo in modo completamente serverless. |
Passaggi successivi
- Scopri di più sull'ambiente di esecuzione di Cloud Run Functions.
- Scopri le best practice per progettare, implementare, testare ed eseguire il deployment di Cloud Run functions.