Kontingente und Limits

Auf dieser Seite werden die skalierbaren, nutzungsbasierten Limits für Cloud Functions beschrieben gemäß dem „Pay as you go“-Preismodell von Blaze. Diese Limits gelten für Firebase-Projekte, die Funktionen in der Node.js 10-Laufzeitumgebung bereitstellen

Der Tarif „Blaze“ bietet großzügige Mengen an Aufrufen, Rechenzeit kostenlosen Internettraffic. Bei Funktionsbereitstellungen entstehen jedoch In Small-Scale wird der Speicherplatz für den Container der Funktion in Rechnung gestellt. Weitere Informationen finden Sie in den häufig gestellten Fragen zu Firebase.

Kontingente für Google Cloud Functions umfassen drei Bereiche:

  • Ressourcenlimits

    Diese beeinflussen die Gesamtmenge der Ressourcen, die Ihre Funktionen verbrauchen können.

  • Zeitlimits

    Diese beeinflussen die maximale Ausführungsdauer der einzelnen Funktionen.

  • Ratenlimits

    Diese beeinflussen die Rate, mit der Sie die Cloud Functions API aufrufen können, um Funktionen verwalten.

Die verschiedenen Arten von Limits werden im Folgenden näher beschrieben. Die Unterschiede zwischen den Limits für Cloud Functions (1st gen) und Cloud Functions (2nd gen) werden gegebenenfalls aufgeführt.

Ressourcenlimits

Ressourcenlimits beeinflussen die Gesamtmenge der Ressourcen, die Ihre Funktionen verbrauchen können. Der regionale Bereich gilt pro Projekt und jedes Projekt hat seine eigenen Limits.

Kontingent Beschreibung Limit (1. Generation) Limit (2. Generation) Kann erhöht werden Umfang
Anzahl der Funktionen Die Gesamtzahl der Funktionen, die pro Region bereitgestellt werden können 1.000 1.000 minus die Anzahl der bereitgestellten Cloud Run-Dienste Nein pro Region
Max. Bereitstellungsgröße Die maximale Größe einer einzelnen Funktionsbereitstellung 100 MB (komprimiert) für Quellen
500 MB (unkomprimiert) für Quellen und Module
Nein pro Funktion
Max. unkomprimierte Größe einer HTTP-Anfrage Daten, die an HTTP-Funktionen in einer HTTP-Anfrage gesendet werden 10 MB 32 MB Nein pro Aufruf
Max. unkomprimierte Größe einer HTTP-Antwort Daten, die von HTTP-Funktionen in einer HTTP-Antwort gesendet werden 10 MB 10 MB für Streamingantworten.
32 MB für Antworten ohne Streaming.
Nein pro Aufruf
Max. Ereignisgröße für ereignisgesteuerte Funktionen Daten, die in Ereignissen an Hintergrundfunktionen gesendet werden 10 MB 512 KB für Eventarc-Ereignisse
10 MB für Legacy-Ereignisse.
Nein pro Ereignis
Max. Funktionsspeicher Größe des Arbeitsspeichers, den jede Funktionsinstanz verwenden kann 8 GiB 32 GiB Nein pro Funktion
Max. Projektspeicher Speicherplatz in By, den ein Projekt nutzen kann. Sie wird anhand der Gesamtsumme des vom Nutzer angeforderten Arbeitsspeichers für alle Funktionsinstanzen über einen Zeitraum von 1 Minute gemessen. Hängt von der ausgewählten Region ab. Dieses Limit kann in Regionen mit hoher Kapazität höher oder in kürzlich geöffneten Regionen niedriger sein. Ja pro Projekt und Region
Max. Projekt-CPU CPU-Menge in Milli-vCPUs, die ein Projekt nutzen kann. Sie wird anhand der Gesamtsumme der vom Nutzer angeforderten CPU über Funktionsinstanzen über einen Zeitraum von 1 Minute gemessen. Hängt von der ausgewählten Region ab. Dieses Limit kann in Regionen mit hoher Kapazität höher oder in kürzlich geöffneten Regionen niedriger sein. Ja pro Projekt und Region

Zeitlimits

Kontingent Beschreibung Limit (1. Generation) Limit (2. Generation) Kann erhöht werden Umfang
Max. Funktionsdauer Der maximale Zeitraum, über den eine Funktion ausgeführt werden kann, bevor sie zwangsweise beendet wird. 540 Sekunden 60 Minuten für HTTP-Funktionen.
9 minutes for event-driven functions.
Nein pro Aufruf

Ratenlimits

Kontingent Beschreibung Limit (1. Generation) Limit (2. Generation) Kann erhöht werden Umfang
API-Aufrufe (READ) Aufrufe zum Beschreiben oder Auflisten von Funktionen über die Cloud Functions API. 5.000 pro 100 Sekunden 1.200 pro 60 Sekunden Nur für die 1. Generation pro Projekt (1. Generation)
pro Region (2. Generation)
API-Aufrufe (WRITE) Aufrufe zum Bereitstellen oder Löschen von Funktionen über die Cloud Functions API. 80 pro 100 Sekunden 60 pro 60 Sekunden Nein 1 pro Projekt (1. Generation)
pro Region (2. Generation)
API-Aufrufe (CALL) Aufrufe an die API „call“. 16 pro 100 Sekunden Nein 2 pro Projekt

Skalierbarkeit

Funktionen von Cloud Functions, die über HTTP aufgerufen werden, lassen sich schnell für die Verarbeitung von eingehendem Traffic skalieren, während Hintergrundfunktionen mehr schrittweise skaliert werden. Die Fähigkeit einer Funktion zum Hochskalieren wird von einigen Faktoren bestimmt, darunter:

  • Die Ausführungsdauer einer Funktion (Funktionen mit kurzer Ausführungsdauer lassen sich im Allgemeinen für die Verarbeitung einer größeren Anzahl gleichzeitiger Anfragen hochskalieren).
  • Die Zeit, die eine Funktion nach einem Kaltstart zur Initialisierung benötigt.
  • Die Fehlerrate Ihrer Funktion.
  • Vorübergehende Faktoren, wie z. B. die regionale Last oder die Rechenzentrumskapazität.

Hintergrundfunktionen haben zusätzliche wie unten erläutert. Diese Limits gelten nicht für die 1. Generation HTTP-Funktionen:

Zusätzliche Kontingente für Hintergrundfunktionen

Kontingent Beschreibung Limit Kann erhöht werden Geltungsbereich Produktversion
Maximale Anzahl gleichzeitiger Aufrufe Die maximale Anzahl gleichzeitiger Aufrufe einer einzelnen Funktion
Beispiel: Wenn die Verarbeitung jedes Ereignisses 100 Sekunden dauert, ist die Aufrufrate im Durchschnitt auf 30 pro Sekunde begrenzt.
3.000 Ja pro Funktion Nur 1. Generation
Maximale Aufrufrate Die maximale Rate von Ereignissen, die von einer einzelnen Funktion verarbeitet werden.
Beispiel: Wenn die Verarbeitung jedes Ereignisses 100 ms dauert, ist die Aufrufrate auf 1.000 Aufrufe pro Sekunde begrenzt, auch wenn durchschnittlich nur 100 Anfragen gleichzeitig verarbeitet werden.
1.000 pro Sekunde Nein pro Funktion Nur 1. Generation
Maximale Datengröße gleichzeitiger Ereignisse Die maximale Gesamtgröße eingehender Ereignisse für gleichzeitige Aufrufe einer einzelnen Funktion.
Beispiel: Wenn Ereignisse eine Größe von 1 MB haben und ihre Verarbeitung 10 Sekunden dauert, liegt die Durchschnittsrate bei 1 Ereignis pro Sekunde, weil das 11. Ereignis nicht verarbeitet wird, bis die Verarbeitung von einem der ersten 10 Ereignisse abgeschlossen ist.
10 MB Nein pro Funktion 1. Generation und 2. Generation
Maximaler Durchsatz eingehender Ereignisse Der maximale Durchsatz eingehender Ereignisse für eine einzelne Funktion.
Beispiel: Wenn Ereignisse eine Größe von 1 MB haben, kann die Aufrufrate maximal 10 pro Sekunde betragen, selbst wenn die Funktionen innerhalb von 100 ms abgeschlossen werden.
10 MB pro Sekunde Nein pro Funktion 1. Generation und 2. Generation

Wenn Sie ein Kontingentlimit erreichen

Wenn eine Funktion eine zugeordnete Ressource vollständig verbraucht hat, ist sie erst nach einer Erneuerung bzw. Erweiterung des Kontingents wieder verfügbar. Dies kann bedeuten, dass diese sowie alle anderen Funktionen im selben Projekt bis dahin nicht funktionieren. Eine Funktion gibt den HTTP-Fehlercode 500 zurück, wenn eine der Ressourcen über dem Kontingent liegt und die Funktion daher nicht ausgeführt werden kann.

Auf der Seite „Kontingente“ in Cloud Functions können Sie Kontingente über die hier aufgeführten Standardwerte hinaus erhöhen. Wählen Sie dazu die Kontingente aus, die Sie ändern möchten, klicken Sie auf KONTINGENTE BEARBEITEN, geben Sie Ihre Nutzerdaten an, wenn Sie dazu aufgefordert werden, und legen Sie die neuen Limits für die ausgewählten Kontingente fest.

Kontingentlimits für die Bereitstellung mit der Firebase CLI

Für jede Funktion, die von der Firebase CLI bereitgestellt wird, werden folgende Arten von Raten- und Zeitlimits sind betroffen:

  • API-Aufrufe (READ): 1 Aufruf pro Bereitstellung, unabhängig von der Anzahl der Funktionen
    • Limit: 5.000 pro 100 Sekunden
  • API-Aufrufe (WRITE): 1 Aufruf pro Funktion
    • Limit: 80 pro 100 Sekunden

Weitere Informationen finden Sie in der Referenz zur Firebase CLI.