Zeitüberschreitung bei Anfrage festlegen

Durch eine Zeitüberschreitung bei Anfrage können Sie den Zeitraum festlegen, in dem die in Cloud Run bereitgestellten Dienste eine Antwort zurückgeben müssen. Wenn innerhalb des festgelegten Zeitraums keine Antwort erfolgt, endet die Anfrage und der Fehler 504 wird ausgegeben.

Das Zeitlimit ist standardmäßig auf 5 Minuten eingestellt und kann auf bis zu 60 Minuten verlängert werden.

Sie können diese Einstellung ändern, wenn Sie ein Container-Image bereitstellen oder die Dienstkonfiguration aktualisieren.

Neben der Zeitüberschreitung bei Anfrage in Cloud Run sollten Sie außerdem prüfen, ob im Framework Ihrer Sprache eine eigene Zeitüberschreitung bei Anfrage festgelegt ist, die ebenfalls aktualisiert werden muss.

Zeitüberschreitung bei Anfrage festlegen und aktualisieren

Jede Konfigurationsänderung führt zur Erstellung einer neuen Überarbeitung. Für nachfolgende Überarbeitungen gilt automatisch dieselbe Konfigurationseinstellung, sofern Sie sie nicht explizit aktualisieren.

Sie können das Zeitlimit bei Anfrage über die Cloud Console, die gcloud-Befehlszeile oder eine YAML-Datei festlegen, wenn Sie einen neuen Dienst erstellen oder eine neue Überarbeitung bereitstellen:

Console

  1. Öffnen Sie Cloud Run.

  2. Klicken Sie auf Dienst erstellen, wenn Sie einen neuen Dienst für die Bereitstellung konfigurieren. Wenn Sie einen vorhandenen Dienst konfigurieren möchten, klicken Sie auf den Dienst und dann auf Neue Überarbeitung bearbeiten und bereitstellen.

  3. Wenn Sie einen neuen Dienst konfigurieren, füllen Sie die Seite mit den anfänglichen Diensteinstellungen wie gewünscht aus und klicken Sie dann auf Weiter > Erweiterte Einstellungen. Daraufhin wird die Seite zur Dienstkonfiguration aufgerufen.

  4. Klicken Sie auf den Tab Container.

    Bild

  5. Geben Sie in das Feld Zeitlimit für Anfragen den Wert für die Zeitüberschreitung ein, die Sie in Sekunden verwenden möchten. Verwenden Sie Werte von 1 bis 3600 Sekunden oder zwischen 1 und 60 Minuten.

  6. Klicken Sie auf Erstellen oder Bereitstellen.

Befehlszeile

Mit dem folgenden Befehl können Sie jederzeit für eine bestimmte Überarbeitung die Zeitüberschreitung bei Anfrage aktualisieren:

gcloud run services update [SERVICE] --timeout=[TIMEOUT]

Ersetzen Sie

  • [SERVICE] durch den Namen des Dienstes.
  • [TIMEOUT] durch die gewünschte Zeit. Dies muss ein ganzzahliger Wert oder ein Wert für die absolute Dauer sein, beispielsweise 1m20s, d. h. 1 Minute und 20 Sekunden. Wenn Sie einen ganzzahligen Wert verwenden, wird als Einheit Sekunden angenommen. Der angegebene Wert muss unter 60 Minuten liegen.

Sie können die Zeitüberschreitung bei Anfrage auch während des Deployments mit folgendem Befehl festlegen:

gcloud run deploy --image IMAGE_URL --timeout=[TIMEOUT]

Ersetzen Sie:

  • IMAGE_URL durch einen Verweis auf das Container-Image, z. B. gcr.io/myproject/my-image:latest.
  • [TIMEOUT] durch die gewünschte Zeit. Dies muss ein ganzzahliger Wert oder ein Wert für die Dauer sein, beispielsweise 1m20s, d. h., 1 Minute und 20 Sekunden. Wenn Sie einen ganzzahligen Wert verwenden, wird als Einheit Sekunden angenommen. Der angegebene Wert muss unter 60 Minuten liegen.

YAML

Sie können die vorhandene Dienstkonfiguration mit dem Befehl gcloud run services describe --format export herunterladen und aufrufen, was bereinigte Ergebnisse im YAML-Format liefert. Anschließend können Sie die unten beschriebenen Felder ändern und die geänderte YAML-Datei mit dem Befehl gcloud beta run services replace hochladen. Achten Sie darauf, dass Sie die Felder nur wie dokumentiert ändern.

  1. So rufen Sie die Konfiguration auf und laden sie herunter:

    gcloud run services describe SERVICE --format export > service.yaml
  2. Aktualisieren Sie das Attribut timeoutSeconds:

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE
    spec:
      template:
        spec:
          containers:
          - image: IMAGE
          timeoutSeconds: VALUE

    Ersetzen Sie:

    • SERVICE durch den Namen Ihres Cloud Run-Dienstes
    • IMAGE durch die URL Ihres Container-Images.
    • VALUE durch das gewünschte Zeitlimit in Sekunden.
  3. Ersetzen Sie den Dienst mit dem folgenden Befehl durch die neue Konfiguration:

    gcloud beta run services replace service.yaml

Zeitüberschreitungseinstellungen bei Anfragen aufrufen

So rufen Sie die aktuellen Zeitüberschreitungseinstellungen bei Anfragen für Ihren Dienst auf:

Console

  1. Öffnen Sie Cloud Run.

  2. Klicken Sie auf den gewünschten Dienst, um die Seite Dienstdetails zu öffnen.

  3. Klicken Sie auf den Tab Überarbeitungen.

  4. Im Detailbereich auf der rechten Seite ist die Zeitüberschreitungseinstellung bei Anfragen auf dem Tab Container aufgelistet.

Befehlszeile

  1. Verwenden Sie den folgenden Befehl:

    gcloud run services describe SERVICE
  2. Suchen Sie in der zurückgegebenen Konfiguration nach der Zeitüberschreitungseinstellung.