¿Por qué no se me notificó un fallo al desvincular la EIP cuando GaussDB(DWS) está conectado por Internet?
Después de que la EIP esté libre, la red puede desconectarse. Sin embargo, la capa TCP no detecta una conexión física defectuosa a tiempo debido a la configuración Keepalive. Como resultado, los clientes gsql, ODBC y JDBC tampoco pueden identificar el error de red a tiempo.
La duración cuando la base de datos envía el mensaje de desconexión al cliente depende de la configuración de Keepalive. El algoritmo específico para calcular la duración es:
keepalive_time + keepalive_probes x keepalive_intvl
Los valores de keepalive afectan a la estabilidad de la comunicación de la red. Ajustarlos a la presión de servicio y a las condiciones de la red.
En Linux, ejecute el comando sysctl para modificar los siguientes parámetros:
- net.ipv4.tcp_keepalive_time
- net.ipv4.tcp_keeaplive_probes
- net.ipv4.tcp_keepalive_intvl
Por ejemplo, si desea cambiar el valor de net.ipv4.tcp_keepalive_time, ejecute el siguiente comando para cambiarlo a 120.
sysctl net.ipv4.tcp_keepalive_time=120
En Windows, modifique la siguiente información de configuración en el Registro HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters:
- KeepAliveTime
- KeepAliveInterval
- TcpMaxDataRetransmissions (equivalent to tcp_keepalive_probes)
Si no puede encontrar los parámetros anteriores en el registro HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters, agregue estos parámetros. Abra Registry Editor, haga clic con el botón derecho en el área en blanco de la derecha y seleccione para agregar estos parámetros.