¿Qué debo hacer si se reporta el error de Java "Connection reset by peer" durante la comprobación de estado de la capa 4 de ELB?
Información de error completa
java.io.IOException: Connection reset by peer at sun.nio.ch.FileDispatcherImpl.read0(Native Method) at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:39) at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223) at sun.nio.ch.IOUtil.read(IOUtil.java:197) at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:380) at com.wanyu.smarthome.gateway.EquipmentSocketServer.handleReadEx(EquipmentSocketServer.java:245) at com.wanyu.smarthome.gateway.EquipmentSocketServer.run(EquipmentSocketServer.java:115)
Resultado del análisis
Se establece un servidor de socket utilizando Java Non-blocking I/O (NIO). Cuando el cliente se cierra inesperadamente en lugar de enviar una notificación especificada para indicar al servidor que salga, se informa de un error.
Proceso de comprobación de estado TCP
- El nodo de ELB que realiza comprobaciones de estado envía un paquete SYN al servidor backend (dirección IP privada + puerto de comprobación de estado) basado en la configuración de comprobación de estado.
- Después de recibir el paquete, el servidor backend devuelve un paquete SYN-ACK a través de su puerto.
- Si el nodo de ELB no recibe el paquete SYN-ACK dentro de la duración del tiempo de espera, el servidor backend se declara insalubre. A continuación, el nodo de ELB envía un paquete RST al servidor back-end para terminar la conexión de TCP.
- Si el nodo de ELB recibe el paquete SYN-ACK desde el servidor backend dentro de la duración del tiempo de espera, envía un paquete de ACK al servidor backend y declara que el servidor backend está en buen estado. A continuación, el nodo de ELB envía un paquete RST al servidor back-end para terminar la conexión de TCP.
Nota
Después de un handshake de tres vías de TCP normal, habrá transferencia de datos. Sin embargo, se enviará un paquete de RST para terminar la conexión de TCP durante la comprobación de estado. Las aplicaciones en el servidor backend pueden determinar un error de conexión e informar de un mensaje, por ejemplo, "Connection reset by peer".
Este error está justificado e inevitable. Puede ignorarlo.
Network Fault Preguntas frecuentes
- ¿Cómo se localiza una falla de red de carga de trabajo?
- ¿Por qué no se puede utilizar la dirección ELB para acceder a las cargas de trabajo en un clúster?
- ¿Por qué no se puede acceder al ingreso fuera del clúster?
- ¿Por qué el navegador devuelve el código de error 404 cuando accedo a una aplicación desplegada?
- ¿Qué debo hacer si un contenedor no se conecta a Internet?
- ¿Qué puedo hacer si no se puede eliminar una subred de VPC?
- ¿Cómo puedo restaurar una NIC de contenedor defectuosa?
- ¿Qué debo hacer si un nodo no se conecta a Internet (red pública)?
- ¿Cómo resuelvo un conflicto entre el bloque CIDR de VPC y el bloque CIDR de contenedores?
- ¿Qué debo hacer si se reporta el error de Java "Connection reset by peer" durante la comprobación de estado de la capa 4 de ELB?
- ¿Cómo localizo el evento de servicio que indica que ningún nodo está disponible para el enlace?
- ¿Por qué se produce el "Dead loop on virtual device gw_11cbf51a, fix it urgently" cuando inicio sesión en una máquina virtual usando VNC?
- ¿Por qué ocurre un pánico ocasionalmente cuando uso políticas de red en un nodo de clúster?
- ¿Por qué se generan muchos logs de origen ip_type en el VNC?
Comentarios
¿Le pareció útil esta página?
Deje algún comentariomore