Stoppen Sie Tomcat 60s Verbindung Timeout Tötung eines langen Uploads

FixMediaService
Verschifft
8. August 2026 um 03:19 UTC
Autor
Kamo
Ausschuss
dcc4af3

Ein 2 GiB Chat-Anhang scheiterte nach fast vier Minuten erfolgreicher Übertragung mit MultipartException Verpackung eine nackte SocketTimeoutException, und das Mitglied war erklärte 'Interner Serverfehler'. Tomcat's disableUploadTimeout ist standardmäßig wahr, was nicht bedeutet, dass es keine gibt Timeout hochladen - es bedeutet, dass das separate, längere deaktiviert ist und connectionTimeout regiert auch Körper-Lesungen. Dieser Standard ist 60er Jahre und wurde nie überschrieben, so dass keine 60-Sekunden-Pause in einem ankommenden Körper tötete den Antrag. An der alten 100 MB Decke ein Transfer selten lange genug, um einen zu treffen; bei 3 GiB läuft es minutenüber Browser, Traefik, der nächste BFF und Tomcat, wo ein Stand, dass lange in der Nähe ist unvermeidlich. Der Körper bekommt jetzt eine Stunde, passend zum Traefik-Eingabepunkt vor es, während die Anfrage Linie und Header halten die 60er Frist, die tatsächlich Grenzen slowloris. Multipart Parsing geschieht, bevor ein Handler gewählt wird, so dass diese Ausfälle nie erreicht die eigene Fehlerbehandlung des Controllers und fiel bis zu Spring's blank 500 - der gleiche Antwort für eine ins Stocken geratene Verbindung und eine übergroße Datei. Sie antworten jetzt 408 und 413 mit einem Grund, auf den ein Mitglied reagieren kann.

Alle Änderungen

Wie, was Sie sehen Versand?

Jedes dieser Updates landet automatisch in Ihrem Arbeitsbereich. Starten Sie frei und beobachten Sie es Woche für Woche wachsen.

Free Forever startenPreisgestaltung anzeigen