none
Lentitud primera llamada a SPSite MSS RRS feed

  • Pregunta

  • Buenas,

    Tengo un servicio web (.svc) que hace llamadas a la API de MSS 2010 para hacer acciones CRUD con datos de listas. La primera llamada que se hace al WS es sumamente lenta, me gustaria saber si hay algun metodo o forma para mejorar esto. He probado hacer una aplicacion de consola y el resultado es lo mismo, cada vez que cierro y abro la aplicacion, al instanciar el site tarda al rededor de 30 y 40 segundos.

    Ejemplo del código:

    using (SPsite site = new SPSite(URL)) {

    using (SPWeb web = new site.OpenWeb()){

    //...

    }

     

    }

     Un saludo.

     

    lunes, 21 de marzo de 2011 20:05

Respuestas

  • Hola Carlos,

    como comenta Juan Carlos no tienes un problema en los servidores, es un comportamiento normal. Piensa que tu servicio WCF es una aplicación web en tu IIS y que tiene una configuración de reciclaje.

    Esta configuración hace que la aplicación se recicle y se suspenda después de un tiempo de inactividad, con lo que cuando haces la primera petición se aumenta el tiempo de respuesta.

    Puedes jugar con esta configuración y evitar este reciclaje, igual mejore el rendimiento de tu servicio.


    Alberto Diaz Martin twitter://@adiazcan | http://geeks.ms/blogs/adiazmartin | MVP SharePoint Server
    martes, 22 de marzo de 2011 8:35

Todas las respuestas

  •  Hola Carlos,

    ¿Cuánta RAM tienes en tu despliegue de SharePoint 2010? Me refiero tanto a los frontales como a los servidores de BD en el caso en el que tengas una instalación en granja.

     

    Saludos!

    lunes, 21 de marzo de 2011 20:31
  • Tenemos dos servidores, uno para SQL Server (6gb) y otro para MSS (8 gb).

    Lo curioso es que una vez hecha la primera comunicación con MSS mediante la API todo lo demas va como la seda, incluso haciendo nuevas instancias de los sitios (tarda un seg), pero si cierras y vuelves abrir la aplicación ahi es cuando tarda bastante.

    Un saludo.

     

    lunes, 21 de marzo de 2011 20:45
  • Hola Carlos,

    Ese comportamiento es normal, no te pasa sólo a tí...de RAM creo que vas bien sin saber cuantos usuarios tienes para tu despliegue ni usuarios concurrentes...como te decía, en la primera llamada el comportamiento es el que observas, luego entra en juego la caché y va todo más fino.

    Saludos!

    lunes, 21 de marzo de 2011 22:21
  • Hola Carlos,

    como comenta Juan Carlos no tienes un problema en los servidores, es un comportamiento normal. Piensa que tu servicio WCF es una aplicación web en tu IIS y que tiene una configuración de reciclaje.

    Esta configuración hace que la aplicación se recicle y se suspenda después de un tiempo de inactividad, con lo que cuando haces la primera petición se aumenta el tiempo de respuesta.

    Puedes jugar con esta configuración y evitar este reciclaje, igual mejore el rendimiento de tu servicio.


    Alberto Diaz Martin twitter://@adiazcan | http://geeks.ms/blogs/adiazmartin | MVP SharePoint Server
    martes, 22 de marzo de 2011 8:35
  • Gracias por las respuestas.

    El problema es que uno de los clientes que llama al ws lo hace dentro de una transacion, que esta pueda tardar cerca de 1 min (entre sus procesos y la lentitud de la llamada) no nos hace mucha gracia.

    Un saludo.

    martes, 22 de marzo de 2011 18:11