Esistono due versioni di Cloud Functions for Firebase:
- Cloud Functions (2ª gen.), che deploya le tue funzioni come servizi su Cloud Run, consentendoti di attivarle utilizzando Eventarc e Pub/Sub.
- Cloud Functions (1ª gen.), la versione originale delle funzioni con trigger di eventi e configurabilità limitati.
Ti consigliamo di scegliere Cloud Functions (2ª gen.) per le nuove funzioni ove possibile. Tuttavia, prevediamo di continuare a supportare Cloud Functions (1ª gen.).
Questa pagina descrive le funzionalità introdotte in Cloud Functions e fornisce un confronto tra le due versioni del prodotto.
Cloud Functions (2ª gen.)
Cloud Functions è l'offerta di Functions-as-a-Service di nuova generazione di Firebase. Basato su Cloud Run e Eventarc, Cloud Functions (2ª gen.) offre un'infrastruttura migliorata e una copertura più ampia degli eventi per Cloud Functions, tra cui:
- Basate su Cloud Run: le funzioni sono create con Cloud Build e di cui viene eseguito il deployment come servizi Cloud Run utilizzando l'Cloud Run ambiente di esecuzione predefinito. In questo modo puoi personalizzare la funzione come faresti con un servizio Cloud Run. Consulta la documentazione di Cloud Run per esplorare le opzioni per configurare il servizio, ad esempio limiti di memoria, variabili di ambiente e così via.
- Tempi di elaborazione delle richieste più lunghi: esegui carichi di lavoro con richieste più lunghe, ad esempio l'elaborazione di grandi flussi di dati da Cloud Storage o BigQuery.
- Dimensioni delle istanze più grandi: esegui carichi di lavoro paralleli, ad alta intensità di calcolo e in memoria più grandi.
- Contemporaneità migliorata: gestisci più richieste simultanee con una singola istanza di funzione per ridurre al minimo gli avvii a freddo e migliorare la latenza.
- Gestione del traffico: dividi il traffico tra diverse revisioni della funzione o esegui il rollback di una funzione a una versione precedente.
- Integrazione di Eventarc: supporto nativo dei trigger Eventarc, che porta tutte le oltre 90 origini evento supportate da Eventarc in Cloud Functions.
- Supporto più ampio di CloudEvents: supporto di CloudEvents standard del settore in tutti i runtime del linguaggio, per un'esperienza di sviluppo coerente.
Per i dettagli, consulta la tabella di confronto.
Poiché Cloud Functions esegue il deployment di funzioni come servizi su Cloud Run, Cloud Functions condivide quote e limiti delle risorse con Cloud Run. Consulta la sezione Quote.
Tabella di confronto
Funzionalità | Cloud Functions (1ª gen.) | Cloud Functions |
---|---|---|
Registro delle immagini | Container Registry o Artifact Registry | Solo Artifact Registry |
Timeout richiesta | Fino a 9 minuti |
|
Dimensione istanza | Fino a 8 GB di RAM con 2 vCPU | Fino a 16 GiB di RAM con 4 vCPU |
Contemporaneità | 1 richiesta in parallelo per istanza di funzione | Fino a 1000 richieste simultanee per istanza di funzione |
Prezzi
Per informazioni sui prezzi, consulta i piani tariffari Firebase.
Se utilizzi Cloud Functions, puoi visualizzare i costi associati solo a Cloud Functions nel seguente modo:
- Vai alla pagina Report Cloud Billing nella console Google Cloud.
- Se richiesto, seleziona l'account di fatturazione associato al tuo progetto Google Cloud.
- Nel riquadro Filtri, sotto Etichette,
aggiungi un filtro etichetta con la chiave
goog-managed-by
e il valorecloudfunctions
.
Limitazioni
Cloud Functions for Firebase (2ª gen.) non supporta gli eventi Analytics.
Sebbene Cloud Functions for Firebase (2ª gen.) supporti gli eventi di blocco dell'autenticazione, non supporta lo stesso insieme di eventi Authentication di base della 1ª gen.
Tuttavia, poiché le funzioni di 1ª e 2ª gen. possono coesistere nello stesso file di origine, puoi comunque sviluppare e implementare trigger Analytics e Authentication di base nella 1ª gen. insieme alle funzioni di 2ª gen.