La primera llamada a un servicio web .net es lenta

Estoy llamando a un servicio web .net desde mi aplicación .net winforms, ambas en el framework 4.0. Durante la ejecución del programa, la primera vez que el servicio web tiene un método llamado, la llamada tarda entre 10 y 12 segundos. Las llamadas subsiguientes toman ~ 1-2 segundos. Las llamadas subsiguientes, incluso cuando se recrea la instancia de referencia web, siguen siendo ~ 1-2 segundos. Cuando se reinicia la aplicación winforms, vuelve a producirse el primer retraso de llamada, pero las llamadas posteriores responden.

La instancia de la referencia web se crea antes de que se produzca la llamada y no forma parte del retraso.

Se están generando XmlSerializers para la aplicación winforms (y hasta el momento se utilizan, pero no estoy seguro de cómo verificar esto).

El retraso no se produce debido a una compilación de primera ejecución en el lado del servicio web. Este es un servicio web de producción que se está utilizando a lo largo del día y su conjunto de aplicaciones permanece en la memoria. Por lo que puedo ver, la demora se está produciendo en el lado del cliente, o entre el cliente y el servidor para esa primera llamada, pero no para las posteriores.

No estoy seguro de qué comprobar a continuación. ¿Algunas ideas?

Respuestas a la pregunta(5)

Su respuesta a la pregunta