Detenga la conexión de los 60 de Tomcat matando a una larga subida

FixMediaService
Se descapó
8 de agosto de 2026 a las 3:19 UTC
Autor
Kamo
Compromit
dcc4af3

Falló un archivo de chat de 2 GiB tras casi cuatro minutos de traspaso exitoso con MultipartException envolviendo un SocketTimeoutException desnudo, y el miembro era "Error de servidor interno". El deshabilitado de TomcatUploadTimeout predeterminado a true, lo que no significa que no haya upload timeout - significa que el separado, más largo está deshabilitado y conexiónTimeout El órgano también se lee. Ese default es de los 60 y nunca fue analgado, así que cualquier Una pausa de 60 segundos en un cuerpo entrante mató la petición. En el viejo techo de 100 MB y la transferencia rara vez corrió lo suficiente para cumplir con uno; en 3 GiB corre durante minutos a través navegador, Traefik, el próximo BFF y Tomcat, donde un puesto que durante mucho tiempo está cerca inevitable. El cuerpo ahora tiene una hora, coincidiando con el punto de entrada de Traefik delante de mientras que la línea de solicitud y las cabeceras mantienen el plazo de los años 60 que realmente limita slowloris. El parsing de varias partes ocurre antes de elegir un manejador, por lo que estos fracasos nunca llegaron el propio manejo del error del controlador y cayó al blanco de Spring 500 el mismo respuesta para una conexión estancado y un archivo sobredimensionado. Ahora responden 408 y 413 con una razón por la que un miembro puede actuar.

Todos los cambios

Como lo que ves enviaste?

Cada una de estas actualizaciones aterriza en su espacio de trabajo automáticamente. Empieza gratis y verlo crecer semana tras semana.

Arranzar gratis para siempreVer Precios