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 Run-Funktionen 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 Instanzen für Cloud Run-Funktionen festzulegen, wenn Ihre Anwendung latenzempfindlich ist.
Inaktive Instanzen und Kaltstarts
Damit die Auswirkungen eines Kaltstarts minimiert werden, versuchen Cloud Run-Funktionen, 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 bleiben, weil eine Mindestanzahl von Instanzen festgelegt wurde, gelten sie nur dann als aktiv, wenn sie in letzter Zeit Traffic verarbeitet haben. Wenn für eine Funktion in letzter Zeit beispielsweise keine Zugriffe verarbeitet wurden, wird im Messwert „Aktive Instanzen“ möglicherweise angezeigt, dass keine Instanzen aktiv sind, auch 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:
Wenn Sie eine neue Funktion erstellen möchten, rufen Sie die Seite "Cloud Run-Funktionen" in der Google Cloud Console auf:
Zur Seite "Cloud Run-Funktionen"Klicken Sie auf Funktion erstellen.
Füllen Sie die erforderlichen Felder für die Funktion aus.
Maximieren Sie am Ende der Seite den Abschnitt Laufzeit, Build... und klicken Sie auf den Tab Laufzeit.
Geben Sie im Abschnitt Automatische Skalierung im Feld Mindestanzahl von Instanzen eine Zahl größer oder gleich 1 ein.
Klicken Sie auf Weiter.
Klicken Sie auf Bereitstellen.
So legen Sie ein Limit für die Mindestanzahl von Instanzen für eine vorhandene Funktion fest:
Rufen Sie in der Google Cloud Console die Seite „Cloud Run-Funktionen“ auf:
Zur Seite „Cloud Run-Funktionen“Klicken Sie auf den Namen einer vorhandenen Funktion, um zu ihrer Seite Funktionsdetails zu gelangen.
Klicken Sie auf Bearbeiten.
Maximieren Sie am Ende der Seite den Abschnitt Laufzeit, Build... und klicken Sie auf den Tab Laufzeit.
Geben Sie im Abschnitt Automatische Skalierung im Feld Mindestanzahl von Instanzen eine Zahl größer oder gleich 1 ein.
Klicken Sie auf Weiter.
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
Ersetzen Sie dabei Folgendes:
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:
Rufen Sie die Seite „Cloud Run-Funktionen“ in der Google Cloud Console auf:
Zur Seite „Cloud Run-Funktionen“Klicken Sie auf den Namen einer vorhandenen Funktion, um zu ihrer Seite Funktionsdetails zu gelangen.
Klicken Sie auf Bearbeiten.
Maximieren Sie am Ende der Seite den Abschnitt Laufzeit, Build... und klicken Sie auf den Tab Laufzeit.
Geben Sie im Abschnitt Automatische Skalierung im Feld Mindestanzahl von Instanzen den Wert 0 ein.
Klicken Sie auf Weiter.
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.