Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

Quote e limiti

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Questa pagina descrive in dettaglio i limiti scalabili e basati sull'utilizzo per Cloud Functions in base al piano tariffario con pagamento in base al consumo di Blaze. Questi limiti si applicano ai progetti Firebase che distribuiscono funzioni nell'ambiente di runtime Node.js 10.

Il piano Blaze offre generose quantità di chiamate, tempo di elaborazione e traffico Internet gratuiti. Tuttavia, le distribuzioni di funzioni comportano addebiti su piccola scala per lo spazio di archiviazione utilizzato per il contenitore della funzione. Consulta le domande frequenti su Firebase per ulteriori informazioni.

Le quote per Google Cloud Functions comprendono 3 aree:

  • Limiti delle risorse

    Questi influenzano la quantità totale di risorse che le tue funzioni possono consumare.

  • Limiti di tempo

    Questi influenzano la durata delle cose.

  • Limiti tariffari

    Questi influiscono sulla velocità con cui puoi chiamare l'API Cloud Functions e/o sulla velocità con cui le risorse possono essere utilizzate. Puoi pensare alle quote tariffarie come "risorse nel tempo".

I diversi tipi di limiti sono descritti più dettagliatamente di seguito. Le differenze tra i limiti per Cloud Functions (1a generazione) e Cloud Functions (2a generazione) sono indicate ove applicabile.

Limiti delle risorse

I limiti delle risorse influiscono sulla quantità totale di risorse che le tue funzioni possono consumare. L'ambito regionale è per progetto e ogni progetto mantiene i propri limiti.

Quota Descrizione Limite (1a generazione) Limite (2ª generazione) Può essere aumentato Scopo
Numero di funzioni Il numero totale di funzioni che possono essere distribuite per regione 1.000 1.000 meno il numero di servizi Cloud Run distribuiti No per regione
Dimensione massima della distribuzione La dimensione massima di una distribuzione di una singola funzione 100 MB (compresso) per le fonti.
500 MB (non compressi) per sorgenti più moduli.
N / A No per funzione
Dimensione massima richiesta HTTP non compressa Dati inviati alle funzioni HTTP in una richiesta HTTP 10MB 32MB No per invocazione
Dimensione massima risposta HTTP non compressa I dati inviati dalle funzioni HTTP in una risposta HTTP 10MB 10 MB per le risposte in streaming.
32 MB per le risposte non in streaming.
No per invocazione
Dimensione massima dell'evento per le funzioni guidate dagli eventi Dati inviati negli eventi alle funzioni in background 10MB 512KB per eventi Eventarc.
10 MB per eventi precedenti.
No per evento
Memoria massima delle funzioni Quantità di memoria che ogni istanza di funzione può utilizzare 8GiB 16GiB No per funzione

Limiti di tempo

Quota Descrizione Limite (1a generazione) Limite (2ª generazione) Può essere aumentato Scopo
Durata massima della funzione La quantità massima di tempo che una funzione può eseguire prima di essere forzatamente terminata 540 secondi 60 minuti per le funzioni HTTP.
10 minuti per le funzioni guidate dagli eventi.
No per invocazione

Limiti tariffari

Quota Descrizione Limite (1a generazione) Limite (2ª generazione) Può essere aumentato Scopo
Chiamate API (LEGGI) Chiamate per descrivere o elencare funzioni tramite l'API Cloud Functions 5000 ogni 100 secondi 1200 ogni 60 secondi Solo per 1a gen per progetto (1a generazione)
per regione (2ª generazione)
Chiamate API (WRITE) Chiamate per il deployment o l'eliminazione di funzioni tramite l'API Cloud Functions 80 ogni 100 secondi 60 ogni 60 secondi N. 1 per progetto (1a generazione)
per regione (2ª generazione)
Chiamate API (CALL) Chiamate all'API "call". 16 ogni 100 secondi N / A N. 2 per progetto

Scalabilità

Le funzioni Cloud Functions richiamate da HTTP scalano rapidamente per gestire il traffico in entrata, mentre le funzioni in background scalano più gradualmente. La capacità di scalare di una funzione è dettata da alcuni fattori, tra cui:

  • La quantità di tempo necessaria per il completamento dell'esecuzione di una funzione (le funzioni a esecuzione breve possono generalmente aumentare le dimensioni per gestire più richieste simultanee).
  • La quantità di tempo necessaria per l'inizializzazione di una funzione all'avvio a freddo .
  • Limiti tariffari , come sopra descritto.
  • Il tasso di errore della tua funzione.
  • Fattori transitori, come il carico regionale e la capacità del data center.

Le funzioni in background hanno limiti aggiuntivi, come spiegato di seguito. Questi limiti non si applicano alle funzioni HTTP .

Quote aggiuntive per le funzioni in background

Quota Descrizione Limite Può essere aumentato Scopo
Numero massimo di chiamate simultanee Numero massimo di chiamate simultanee di una singola funzione
Esempio: se la gestione di ogni evento richiede 100 secondi, il tasso di invocazione sarà limitato in media a 30 al secondo
3.000 No per funzione
Tasso massimo di chiamate La frequenza massima di eventi gestiti da una singola funzione
Esempio: se la gestione di un evento richiede 100 ms, il tasso di invocazione sarà limitato a 1000 al secondo anche se in media vengono gestite solo 100 richieste in parallelo
1000 al secondo No per funzione
Dimensione massima dei dati dell'evento simultaneo La dimensione totale massima degli eventi in entrata per le chiamate simultanee di una singola funzione
Esempio: se gli eventi hanno una dimensione di 1 MB e l'elaborazione richiede 10 secondi, la frequenza media sarà di 1 evento al secondo, poiché l'undicesimo evento non verrà elaborato fino al termine dell'elaborazione di uno dei primi 10 eventi
10MB No per funzione
Velocità effettiva massima di eventi in entrata La velocità effettiva massima di eventi in ingresso per una singola funzione
Esempio: se gli eventi hanno una dimensione di 1 MB, il tasso di invocazione può essere massimo di 10 al secondo, anche se le funzioni terminano entro 100 ms
10 MB al secondo No per funzione

Quando raggiungi un limite di quota

Quando una funzione utilizza tutta una risorsa allocata, la risorsa diventa non disponibile finché la quota non viene aggiornata o aumentata. Ciò può significare che la tua funzione e tutte le altre funzioni nello stesso progetto non funzioneranno fino a quel momento. Una funzione restituisce un codice di errore HTTP 500 quando una delle risorse supera la quota e la funzione non può essere eseguita.

Per aumentare le quote al di sopra delle impostazioni predefinite elencate qui, vai alla pagina delle quote di Cloud Functions , seleziona le quote che desideri modificare, fai clic su MODIFICA QUOTE , fornisci le tue informazioni utente se richiesto e inserisci il nuovo limite di quota per ogni quota selezionata.

Limiti di quota per la distribuzione dell'interfaccia a riga di comando di Firebase

Per ogni funzione distribuita dalla CLI di Firebase, sono interessati questi tipi di velocità e limiti di tempo:

  • Chiamate API (READ): 1 chiamata per distribuzione, indipendentemente dal numero di funzioni
    • Limite: 5000 per 100 secondi
  • Chiamate API (WRITE) - 1 chiamata per funzione
    • Limite: 80 per 100 secondi

Consulta anche il riferimento all'interfaccia della riga di comando di Firebase .