Kontingente

In diesem Dokument werden die Kontingentlimits für Google Cloud Functions beschrieben.

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, und/oder die Rate, mit der Ressourcen verwendet werden können. Sie können sich Ratenkontingente als „Ressourcen im Zeitverlauf“ vorstellen.

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 16 GiB Nein pro Funktion

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.
10 Minuten für ereignisgesteuerte Funktionen.
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.
  • Ratenlimits, wie oben beschrieben.
  • Die Fehlerrate Ihrer Funktion.
  • Vorübergehende Faktoren, wie z. B. die regionale Last oder die Rechenzentrumskapazität.
Für Hintergrundfunktionen gelten die unten näher erläuterten zusätzlichen Limits. HTTP-Funktionen sind davon nicht betroffen.

Zusätzliche Kontingente für Hintergrundfunktionen

Kontingent Beschreibung Limit Kann erhöht werden Umfang
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 Nein pro Funktion
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
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
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

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.