Español

Error: No se puede procesar la solicitud. java.net.SocketException: Connection reset by peer: socket write error

Mensaje de error

Al encontrarse con un problema de red, suele aparecer el siguiente error en los registros de ArcGIS Server.

"No se puede procesar la solicitud. java.net.SocketException: Connection reset by peer: socket write error"
[O-Image]

Causa

Estas son algunas de las posibles causas del error:

  • El error se produce al cerrar una conexión de forma repentina (al restablecer una conexión TCP cuando todavía hay datos en el búfer de envío). La condición se parece mucho a la habitual "Connection reset by peer". Puede suceder esporádicamente al conectarse por Internet, pero también sistemáticamente si es el momento correcto (por ejemplo, con conexiones persistentes en el host local).
  • El socket de Protocolo de control de transmisión (TCP) está cerrado porque el socket recibió un comando de cierre de un equipo de base de datos remoto.
  • Se recibió un paquete Reset (RST) de un equipo remoto y se interrumpe la conexión establecida. Los paquetes RST enviados pueden indicar que los paquetes TCP enviados no se reconocen, la conexión entre los equipos de base de datos local y remoto está dañada o un puerto concreto está cerrado y no está permitiendo la comunicación.
  • Existe un tiempo de espera o un reinicio de la base de datos remota. Si existe un tiempo de inactividad o si se reinicia el equipo de la base de datos, la base de datos deja de estar disponible.

Solución o solución alternativa

Ejecute el comando ping para determinar si el equipo remoto está disponible.

  1. Vaya a Inicio de Windows.
  2. Escriba cmd en la barra de búsqueda Buscar programas y archivos .
  3. Haga clic en cmd desde los resultados de búsqueda.
    [O-Image]
  4. En la línea de comandos, escriba ping seguido de la dirección del servidor remoto y pulse Intro. A continuación, encontrará un ejemplo de una solicitud ping realizada correctamente.
    [O-Image]
    Nota:
    Incluso aunque los resultados sean correctos, hay casos en los que el equipo de destino no responde y puede seguir devolviendo un resultado de ping correcto. Los datos que se devuelven pueden ayudar a determinar si existen problemas de comunicación entre el equipo remoto y el equipo local.
  5. Ejecute el comando tracert para diagnosticar si se están produciendo fallos de comunicación, así como el lugar donde están sucediendo:
    1. Siga los pasos anteriores, del 1 al 3.
    2. En el paso 4, en la línea de comandos, escriba tracert seguido de la dirección de destino y pulse Intro. A continuación, encontrará un ejemplo de una solicitud tracert realizada correctamente.
    [O-Image]
    Nota:
    El comando tracert es similar al comando ping; sin embargo, el comando ping muestra detalladamente todas las vías tomadas para establecer una conexión con el equipo de destino.
  6. Ejecute el comando telnet para comprobar si los puertos están abiertos en el equipo local.
    1. Siga los pasos anteriores, del 1 al 3.
    2. En el paso 4, en la línea de comandos, escriba telnet seguido de la dirección de destino. Puede ser el nombre o la dirección IP del equipo local seguido del número de puerto. Pulse Intro.
    [O-Image]
    Nota:
    En caso correcto, la pantalla se queda en blanco, lo cual indica que el puerto está abierto; sin embargo, si el puerto está cerrado, aparece el siguiente mensaje. 
    [O-Image]
    Nota:
    Puede habilitar la característica telnet en un equipo Windows yendo a Inicio de Windows > Panel de control > Programas (y características). En la barra lateral de la izquierda, haga clic en Activar o desactivar las características de Windows y asegúrese de que la casilla de verificación Cliente Telnet esté activada. Haga clic en Aceptar.
  7. Ejecute SDEINTERCEPT para diagnosticar problemas de conexión y rendimiento de ArcSDE. En el siguiente documento técnico se describe detalladamente este proceso:
    Cómo: Diagnosticar problemas de rendimiento y conexión de ArcSDE con SDEINTERCEPT.
    Nota:
    Si se identifica que la causa del problema es el servidor de la base de datos, contacte con el administrador de base de datos (DBA) para solucionar el problema.

Información relacionada