View a markdown version of this page

HTTP 503-Statuscode (Service nicht verfügbar) - Amazon CloudFront

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

HTTP 503-Statuscode (Service nicht verfügbar)

Ein HTTP-Statuscode 503 (Service nicht verfügbar) zeigt in der Regel an, dass es auf dem Ursprungsserver ein Leistungsproblem gibt. In seltenen Fällen deutet dies darauf hin, dass eine Anforderung aufgrund von Ressourcenbeschränkungen an einem Edge-Standort CloudFront vorübergehend nicht bearbeitet werden kann.

Wenn Sie Lambda @Edge oder CloudFront Functions verwenden, könnte das Problem ein Ausführungsfehler oder ein Lambda @Edge -Limit-Überschreitungsfehler sein.

Wenn Sie Mutual Origin TLS (Origin mTLS) verwenden, kann das Problem auf wiederholte fehlgeschlagene Versuche zurückzuführen sein, eine Verbindung mit einem bestimmten Zertifikat herzustellen.

Ursprungsserver verfügt nicht über ausreichend Kapazitäten für die vorliegende Anfragerate

Wenn ein Ursprungsserver nicht verfügbar ist oder eingehende Anfragen nicht bearbeiten kann, gibt er einen HTTP 503-Statuscode zurück (Service nicht verfügbar). CloudFront leitet den Fehler dann an den Benutzer zurück. Sie lösen dieses Problem, indem Sie die folgenden Schritte ausführen:

  • Wenn Sie Amazon S3 als Ihren Ursprungsserver verwenden:

    • Sie können 3.500 PUT/COPY/POST/DELETE oder 5.500 GET/HEAD Anfragen pro Sekunde pro partitioniertem Amazon S3-Präfix senden. Wenn Amazon S3 die Antwort 503 „Slow Down“ zurückgibt, deutet dies in der Regel auf eine zu hohe Anforderungsrate für ein bestimmtes Amazon-S3-Präfix hin.

      Da die Anforderungsraten pro Präfix in einem S3-Bucket gelten, sollten Objekte auf mehrere Präfixe verteilt werden. Mit steigender Anforderungsrate für die Präfixe skaliert Amazon S3 hoch, um Anforderungen für jedes der Präfixe separat zu bearbeiten. Infolgedessen ist die Gesamtanforderungsrate, die der Bucket verarbeitet, ein Vielfaches der Anzahl der Präfixe.

    • Weitere Informationen zu Amazon-S3-Berechtigungen finden Sie unter Optimieren der Amazon-S3-Leistung im Benutzerhandbuch zu Amazon Simple Storage Service.

  • Wenn Sie Elastic Load Balancing als Ursprungsserver verwenden:

    • Stellen Sie sicher, dass Ihre Backend-Instances auf Zustandsprüfungen reagieren können.

    • Stellen Sie sicher, dass Ihr Load Balancer und Ihre Backend-Instances die Last bewältigen können.

    Weitere Informationen finden Sie unter:

  • Wenn Sie einen benutzerdefinierten Ursprung verwenden:

    • Prüfen Sie die Anwendungsprotokolle, um sicherzustellen, dass Ihr Ursprung über ausreichend Ressourcen verfügt, wie z. B. Arbeitsspeicher, CPU und Festplattengröße.

    • Wenn Sie Amazon EC2 als Backend verwenden, stellen Sie sicher, dass der Instance-Typ über die Ressourcen verfügt, die für die Verarbeitung der eingehenden Anforderungen erforderlich sind. Weitere Informationen finden Sie unter Instance-Typen im Amazon EC2-Benutzerhandbuch.

  • Wenn Sie API Gateway verwenden:

    • Dieser Fehler steht im Zusammenhang mit der Backend-Integration, wenn die API in Gateway API keine Antwort empfangen kann. Der Backend-Server ist möglicherweise:

      • über die Kapazität hinaus überlastet und kann keine neuen Client-Anforderungen verarbeiten;

      • gerade im Wartungszustand.

    • Um diesen Fehler zu beheben, schauen Sie sich die Protokolle Ihrer API-Gateway-Anwendung an, um festzustellen, ob ein Problem mit der Backend-Kapazität, der Integration oder etwas anderem vorliegt.

CloudFront hat den Fehler aufgrund von Ressourcenbeschränkungen am Edge-Standort verursacht

Dieser Fehler tritt in dem seltenen Fall auf, dass CloudFront Anfragen nicht an den nächstbesten verfügbaren Edge-Standort weitergeleitet werden können und daher eine Anfrage nicht bearbeitet werden kann. Dieser Fehler tritt häufig auf, wenn Sie in Ihrer CloudFront-Verteilung Belastungstests durchführen. Um dies zu vermeiden, befolgen Sie die Testen der Belastung CloudFront-Richtlinien zum Vermeiden des Fehlers 503 (Kapazität überschritten).

Wenn dieser Fehler in Ihrer Produktionsumgebung auftritt, wenden Sie sich an Support.

CloudFront hat den Fehler für einen mit gegenseitigem TLS konfigurierten Ursprung verursacht

Wenn Ihre Distribution Mutual TLS (mTLS) verwendet, um eine Verbindung zu einem benutzerdefinierten Ursprung herzustellen, wird CloudFront möglicherweise ein HTTP 503-Statuscode zurückgegeben, wenn keine Verbindungen zum Ursprung hergestellt werden können. Dies kann passieren, wenn der Ursprung die TLS-Handshakes wiederholt nicht abschließt oder aufgrund von DNS- oder Verbindungsproblemen nicht erreichbar ist. Dieser Zustand ist vorübergehend — nimmt den normalen Verkehr CloudFront automatisch wieder auf, sobald der Ursprung wieder erreichbar ist.

So beheben Sie dieses Problem

  • Vergewissern Sie sich, dass das richtige Client-Zertifikat mit Ihrer Distribution verknüpft ist und dass es nicht abgelaufen ist. Wenn Sie das Zertifikat kürzlich aktualisiert haben, warten Sie, bis die Änderung wirksam wird.

  • Vergewissern Sie sich, dass der Ursprung erreichbar ist und dass die DNS-Einträge korrekt aufgelöst werden.

Wenn das Problem trotz der Konfiguration des richtigen Zertifikats in Ihrer Produktionsumgebung weiterhin besteht, wenden Sie sich an Support.

Fehler bei der Ausführung von Lambda @Edge oder der CloudFront Funktion

Wenn Sie Lambda @Edge oder CloudFront Functions verwenden, kann ein HTTP 503-Statuscode darauf hinweisen, dass Ihre Funktion einen Ausführungsfehler zurückgegeben hat.

Weitere Informationen zur Identifizierung und Behebung von Lambda@Edge-Fehlern finden Sie unter Testen und Debuggen von Lambda@Edge-Funktionen.

Weitere Hinweise zum Testen von CloudFront Funktionen finden Sie unterTestfunktionen.

Lambda@Edge-Grenzwert überschritten

Wenn Sie Lambda@Edge verwenden, kann der HTTP-Statuscode 503 anzeigen, dass Lambda einen Fehler zurückgegeben hat. Der Fehler kann durch eine der folgenden Ursachen bedingt sein.

  • Die Anzahl der Funktionsausführungen hat eines der Kontingente überschritten, die Lambda zur Drosselung der Ausführung in einem festlegt AWS-Region (gleichzeitige Ausführungen oder Aufrufhäufigkeit).

  • Die Funktion hat das Timeout-Kontingent für die Lambda-Funktion überschritten.

Weitere Informationen zu den Lambda@Edge-Kontingenten finden Sie unter Kontingente für Lambda@Edge. Weitere Informationen zur Identifizierung und Behebung von Lambda@Edge-Fehlern finden Sie unter Testen und Debuggen von Lambda@Edge-Funktionen. Die Lambda-Servicekontingente finden Sie auch im Entwicklungshandbuch für AWS Lambda .