none
Ayuda Urgente Aparente saturación Web service ASMX RRS feed

  • Pregunta

  • Buenos dias estimados amigos

    tengo un web service que recibe muchas llamadas, ya que recibe llamadas de un programador de tareas de un software "X" despues de cierto tiempo (en ocasiones dias, horas o semanas no hay un tendencia que permita diagnosticar algo) devuelve una excepcion de time out a todas la llamadas que se le hacen

    Información de la excepción: 
        Tipo de excepción: HttpException 
        Mensaje de la excepción: Tiempo de espera agotado para esta solicitud.

    siempre devuelve la misma excepcion. Solicito ayuda para diagnosticar y corregir de manera correcta mi error.

    Muchas gracias

    PD: Si pueden recomendar un libro (no importa el idioma) que muestre aspectos de configuración de iis les agredeceria

    PD2: el servidor es bueno es un equipo oracel 75gb de ram, 24 nucleos

    martes, 16 de junio de 2015 14:49

Todas las respuestas

  • hola

    en cada llamada realizas una nueva instancia del proxy del servicio o usas siempre el mismo ?

    imagino creas un web reference al asmx, no?

    entonces usas el "new" cada vez que quieres instanciar alguna funcionalidad? porque puede que sino pierda la conexion y por eso el fallo

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 16 de junio de 2015 15:22
  • Hola leandro, no pues uso la misma instancia para hacer todas las llamadas así que tienes razón si pierde la conexión a esa instancia puede que la pierda en todos los casos, pero explícame algo en cuanto a lo que recursos se refiere (cpu, ram y puertos tcp)  ¿abrir una instancia por consulta no generaría mayor consumo? el fuerte del software es conectar tcp con otro equipos en ocasiones consume todos los puertos tcp del pc por eso me gustaria conservar los mas posibles
    martes, 16 de junio de 2015 15:29
  • hola

    >>¿abrir una instancia por consulta no generaría mayor consumo?

    no al contrario, sino reciclas la instancia del proxy entonces Garbage Collector no la reciclara nunca y eso es peor

    cada vez que vayas a llamas al servicio crea una instancia nueva dentro de un using

    using(NombreProxy svc = new NombreProxy()){
    
       svc.NombreWebMethod();
    
    }



    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 16 de junio de 2015 15:55
  • En nuestro caso es un asmx no un WCF bueno entonces teóricamente todo el asunto de que genere esa excepcion es que la instancia global haya perdido conexion
    martes, 16 de junio de 2015 16:07
  • Amigo leandro implemente lo que me comentaste y el problema persiste si tienes alguna otra idea espero por tus respuestas 
    jueves, 18 de junio de 2015 14:42