504 Gateway Timeout ist ein HTTP-Statuscode, der anzeigt, dass ein Server, der als Gateway oder Proxy fungiert, keine rechtzeitige Antwort von einem Upstream-Server erhalten hat.

Es gibt einige spezifische Gründe, warum ein HTTP-Statuscode 504 Gateway Timeout zurückgegeben werden kann:

  • Der Gateway-Server, der als Proxy oder Load Balancer fungiert, erhält keine Antwort von einem vorgelagerten Anwendungsserver oder Microservice innerhalb der zugewiesenen Zeitspanne, während er auf eine vollständige Antwort wartet.
  • Hinter dem Gateway befindet sich ein überlasteter Anwendungsserver, der zu langsam arbeitet, um Antworten auf vom Client gestellte Anfragen innerhalb des für das Gateway konfigurierten Zeitfensters für die Antwort vollständig zu erstellen.
  • Ein DNS, eine Datenbank oder ein anderer externer Dienst, auf den sich die Backend-Anwendung bei der Erstellung von Antworten verlässt, liefert wichtige Daten, die das Gateway benötigt, zu langsam.
  • Sicherheitsdienste wie WAFs oder Authentifizierungsschichten zwischen dem Gateway und den Anwendungsservern tragen zu einer zusätzlichen Latenz bei, die bei der Verarbeitung von Anfragen und Antworten die Timeout-Schwellenwerte überschreitet.
  • Die Netzwerkverbindung zwischen den entkoppelten Gateway- und Anwendungsserver-Ebenen leidet unter Paketverlusten, hohem Jitter oder Konnektivitätsproblemen, die die Übertragungsleistung unter Zeitüberschreitungen verschlechtern.
  • Die Anwendung funktioniert ordnungsgemäß, aber die auf dem zwischengeschalteten Gateway konfigurierten Timeouts sind zu aggressiv für die normalen Verhaltensmuster.

Zusammenfassend lässt sich sagen, dass 504 Fehler auf unzureichende Antwortzeiten der Systeme hinter einem Gateway zurückzuführen sind, die ein vollständiges Proxy-Verhalten der Anwendung innerhalb zulässiger Zeitgrenzen ermöglichen.