Mindestanzahl von Instanzen konfigurieren

Sie können Kaltstarts für Ihre Anwendung vermeiden und die Anwendungslatenz reduzieren. Legen Sie dazu eine Mindestanzahl von Instanzen fest.

In Cloud Functions wird die Skalierung durch das Erstellen neuer Instanzen Ihrer Funktion erreicht. Jede dieser Instanzen kann jeweils nur eine Anfrage gleichzeitig verarbeiten. Große Spitzen im Anfragevolumen führen häufig zu längeren Wartezeiten, da neue Instanzen erstellt werden, um den Bedarf zu decken.

Da Funktionen zustandslos sind, initialisiert die Funktion manchmal die Ausführungsumgebung von Grund auf neu. Dies wird als Kaltstart bezeichnet. Kaltstarts können viel Zeit in Anspruch nehmen. Daher empfehlen wir, eine Mindestanzahl von Cloud Functions-Instanzen festzulegen, wenn Ihre Anwendung latenzempfindlich ist.

Inaktive Instanzen und Kaltstarts

Damit die Auswirkungen eines Kaltstarts minimiert werden, versucht Cloud Functions, Funktionsinstanzen nach der Verarbeitung einer Anfrage für einen nicht festgelegten Zeitraum inaktiv zu halten. Während dieser Inaktivität können Ressourcen wie offene Datenbankverbindungen beibehalten werden, falls eine andere Anfrage verarbeitet werden muss. Instanzen, die auf diese Weise inaktiv bleiben, werden auf das Limit für die maximale Anzahl von Instanzen für Ihre Funktion angerechnet, Ihnen wird jedoch die inaktive Zeit nicht in Rechnung gestellt.

Dieses integrierte Verhalten ist für Ihre Anwendung möglicherweise nicht ausreichend, insbesondere wenn sie latenzempfindlich ist. Durch explizites Festlegen einer Mindestanzahl von Instanzen können Sie außerdem Kaltstarts vermeiden und die Anwendungslatenz verringern.

Wenn Instanzen inaktiv sind, weil eine Mindestanzahl von Instanzen festgelegt wurde, werden diese Instanzen nur dann als aktiv betrachtet, wenn sie Traffic bereitgestellt haben. Wenn eine Funktion beispielsweise kürzlich keinen Traffic bereitgestellt hat, zeigt der Messwert „Aktive Instanzen“ möglicherweise nicht an, dass Instanzen aktiv sind, selbst wenn ein Wert für die Mindestanzahl von Instanzen festgelegt wurde.

Wenn Sie eine Mindestanzahl von Instanzen festlegen, wird die Inaktivitätszeit dieser Instanzen in Rechnung gestellt. Unter Preise finden Sie weitere Informationen.

Mindestinstanzlimits festlegen und löschen

Sie können für eine Funktion während der Bereitstellung eine Mindestanzahl von Instanzen festlegen. Jede Funktion hat ihre eigene Einstellung für die Mindestanzahl von Instanzen.

Mindestinstanzlimits festlegen

Sie können ein Mindestinstanzlimit entweder über die Google Cloud CLI oder die Google Cloud Console festlegen.

Console

So legen Sie ein Limit für die Mindestanzahl von Instanzen für eine neue Funktion fest:

  1. Wenn Sie eine neue Funktion erstellen möchten, rufen Sie die Seite "Cloud Functions" in der Google Cloud Console auf:
    Zur Seite "Cloud Functions"

  2. Klicken Sie auf Funktion erstellen.

  3. Füllen Sie die erforderlichen Felder für die Funktion aus.

  4. Maximieren Sie am Ende der Seite den Abschnitt Laufzeit, Build... und klicken Sie auf den Tab Laufzeit.

  5. Geben Sie im Abschnitt Automatische Skalierung im Feld Mindestanzahl von Instanzen eine Zahl größer oder gleich 1 ein.

  6. Klicken Sie auf Next (Weiter).

  7. Klicken Sie auf Bereitstellen.

So legen Sie ein Limit für die Mindestanzahl von Instanzen für eine vorhandene Funktion fest:

  1. Rufen Sie die Seite "Cloud Functions" in der Google Cloud Console auf:
    Zur Seite "Cloud Functions"

  2. Klicken Sie auf den Namen einer vorhandenen Funktion, um zu ihrer Seite Funktionsdetails zu gelangen.

  3. Klicken Sie auf Bearbeiten.

  4. Maximieren Sie am Ende der Seite den Abschnitt Laufzeit, Build... und klicken Sie auf den Tab Laufzeit.

  5. Geben Sie im Abschnitt Automatische Skalierung im Feld Mindestanzahl von Instanzen eine Zahl größer oder gleich 1 ein.

  6. Klicken Sie auf Next (Weiter).

  7. Klicken Sie auf Bereitstellen.

gcloud

Führen Sie den folgenden Befehl aus, um ein Limit für die Mindestanzahl von Instanzen festzulegen:

gcloud functions deploy FUNCTION_NAME \
--min-instances MIN_INSTANCE_LIMIT

Dabei gilt:

  • FUNCTION_NAME: Der Name Ihrer Funktion.

  • MIN_INSTANCE_LIMIT: Die als Mindestinstanzlimit festzulegende Zahl, darf 1.000 nicht überschreiten.

Das Mindestinstanzlimit der Funktion wurde jetzt festgelegt.

Limit für die Mindestanzahl von Instanzen löschen

Sie können ein Mindestinstanzlimit über die Google Cloud CLI oder die Google Cloud Console löschen bzw. entfernen.

Console

So löschen Sie das Limit für die Mindestanzahl von Instanzen einer Funktion:

  1. Rufen Sie die Seite "Cloud Functions" in der Google Cloud Console auf:
    Zur Seite "Cloud Functions"

  2. Klicken Sie auf den Namen einer vorhandenen Funktion, um zu ihrer Seite Funktionsdetails zu gelangen.

  3. Klicken Sie auf Bearbeiten.

  4. Maximieren Sie am Ende der Seite den Abschnitt Laufzeit, Build... und klicken Sie auf den Tab Laufzeit.

  5. Geben Sie im Abschnitt Automatische Skalierung im Feld Mindestanzahl von Instanzen den Wert 0 ein.

  6. Klicken Sie auf Next (Weiter).

  7. Klicken Sie auf Bereitstellen.

gcloud

Verwenden Sie zum Zeitpunkt der Bereitstellung das Flag --clear-min-instances:

gcloud functions deploy FUNCTION_NAME --clear-min-instances

Das minimale Instanzlimit der Funktion wurde gelöscht.

Empfehlungen zum Festlegen von Mindestinstanzen abrufen

Der Recommender-Dienst liefert automatisch Empfehlungen für bereitgestellte Funktionen, die von einer festgelegten Mindestanzahl von Instanzen profitieren könnten.