Tenemos un servicio web codificado en C# que hace muchas llamadas a la base de datos MS SQL Server 2005. El código usa el uso de bloques combinados con la agrupación de conexiones de C#.¿Por qué tantas sp_resetconnections para la agrupación de conexiones C#?
Durante una traza de SQL, vimos muchas, muchas llamadas a "sp_resetconnection". La mayoría de estos son cortos < 0.5 segundos, sin embargo, a veces recibimos llamadas que duran hasta 9 segundos.
Según lo que he leído sp_resetconnection está relacionado con la agrupación de conexiones y restablece básicamente el estado de una conexión abierta. Mis preguntas:
- ¿Por qué una conexión abierta necesita su restablecimiento de estado?
- ¿Por qué tantas de estas llamadas?
- Lo que podría causar que una llamada a la conexión sp_reset tome un tiempo no trivial.
Esto es todo un misterio para mí, y agradezco cualquier y toda ayuda!
Si tiene un seguimiento del generador de perfiles que muestra que sp_reset_connetion lleva mucho tiempo, ¿por qué no mira qué trabajo hizo ese cliente antes de la llamada? Eso debería darte una idea de qué estado se está derribando durante la llamada. – ahains
posible duplicado de [¿Qué hace sp \ _reset \ _connection do?] (Http://stackoverflow.com/questions/596365/what-does-sp-reset-connection-do) –