Saltar al contenido

¿Cuándo se lanza “java.io.IOException: Connection reset by peer”?

Solución:

java.io.IOException: conexión restablecida por par

El otro lado ha abortado abruptamente la conexión en medio de una transacción. Eso puede tener muchas causas que no son controlables desde el lado del servidor. Por ejemplo, el usuario final decidió apagar el cliente o cambiar el servidor abruptamente mientras aún interactuaba con su servidor, o el programa del cliente se bloqueó, o la conexión a Internet del usuario final se cortó, o la máquina del usuario final colapsó, etc., etc.

Para ampliar la respuesta de BalusC, cualquier escenario en el que el remitente continúe escribiendo después de que el par haya dejado de leer y cerrado su socket producirá esta excepción, al igual que el par cerrándose mientras todavía tenía datos no leídos en su propio búfer de recepción de socket. En otras palabras, un error de protocolo de aplicación. Por ejemplo, si le escribe algo al par que el par no comprende, y luego cierra su socket en protesta, y luego continúa escribiendo, la pila TCP del par emitirá un RST, lo que da como resultado esta excepción y mensaje en el remitente.

java.io.IOException en Netty significa que su servidor de juegos intenta enviar datos a un cliente, pero ese cliente ha cerrado la conexión con su servidor.

¡Y esa excepción no es la única! Hay varios más. Consulte BadClientSilencer en Xitrum. Tuve que agregar eso para evitar que esos errores estropeen mi archivo de registro.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *