Esistono due versioni di Cloud Functions for Firebase:
- Cloud Functions (2ª gen.), che consente di eseguire il deployment delle funzioni come servizi su Cloud Run, in modo da attivarle utilizzando Eventarc e Pub/Sub.
- Cloud Functions (1ª gen.), la versione originale delle funzioni con attivatori e configurabilità degli eventi 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 Functions-as-a-Service di nuova generazione di Firebase. Basata 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 vengono create con Cloud Build e di cui viene eseguito il deployment come servizi Cloud Run. In questo modo, hai la possibilità di personalizzare la funzione come faresti con un servizio Cloud Run. Fai riferimento alla documentazione di Cloud Run per esplorare le opzioni di configurazione del 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 stream di dati da Cloud Storage o BigQuery.
- Dimensioni delle istanze più grandi: esegui carichi di lavoro in-memory, paralleli e ad alta intensità di calcolo di dimensioni maggiori.
- Contemporaneità migliorata: gestisci più richieste in parallelo con una singola istanza di funzione per ridurre al minimo gli avvii a freddo e migliorare la latenza.
- Gestione del traffico: suddividi il traffico tra diverse revisioni delle funzioni o esegui il rollback di una funzione a una versione precedente.
- Integrazione di Eventarc: supporto nativo per gli attivatori Eventarc, che consente di portare in Cloud Functions tutte le oltre 90 origini evento supportate da Eventarc.
- Supporto più ampio di CloudEvents: supporto di CloudEvents standard di settore in tutti i runtime delle lingue, che offre un'esperienza coerente per gli sviluppatori.
Per informazioni dettagliate, 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 |
---|---|---|
Registry 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 GB di RAM con 4 vCPU |
Contemporaneità | 1 richiesta in parallelo per istanza di funzione | Fino a 1000 richieste in parallelo 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 come segue:
- Vai alla Cloud Billing pagina Report nella console Google Cloud.
- Se richiesto, seleziona l'account di fatturazione associato al tuo progetto Google Cloud.
- Nel riquadro Filtri, in Etichette,
aggiungi un filtro per 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 Cloud Functions for Firebase di base della 1ª gen.Authentication
Tuttavia, poiché le funzioni di 1ª e 2ª generazione possono coesistere nello stesso file di origine, puoi comunque sviluppare e implementare attivatori Analytics e Authentication di base di 1ª generazione insieme alle funzioni di 2ª generazione.