Tengo un gran problema aquí, en mi servidor.Más de 100 conexiones al servidor sql 2008 en estado "inactivo"
Tengo un ASP .net web (framework 4.x) ejecutándose en mi servidor, todas las transacciones/select/update/insert se hacen con ADO.NET.
El problema es que después de haber estado usando durante un tiempo (un par de actualizaciones/Selecciona/inserciones) a veces me dieron más de 100 conexiones en "dormir" el estado cuando el registro de las conexiones en el servidor SQL con esta consulta:
SELECT
spid,
a.status,
hostname,
program_name,
cmd,
cpu,
physical_io,
blocked,
b.name,
loginame
FROM
master.dbo.sysprocesses a INNER JOIN
master.dbo.sysdatabases b ON
a.dbid = b.dbid where program_name like '%TMS%'
ORDER BY spid
He estado revisando mi código y cerrando cada vez que hago una conexión, voy a probar la nueva clase, pero me temo que el problema no se soluciona.
Supongo que la agrupación de la conexión, mantenga las conexiones para volver a utilizarlos, pero hasta que vea no los vuelva a utilizar siempre.
¿Alguna idea además de verificar para cerrar todas las conexiones abiertas después de usarlas?
SOLUCIONADO (ahora tienen un solo y la conexión hermosa en estado "durmiente"):
Además de la anwser de David Stratton, me gustaría compartir este enlace que ayudan a explicar muy bien cómo el agrupación de conexiones funciona: http://dinesql.blogspot.com/2010/07/sql-server-sleeping-status-and.html
para ser breve, es necesario cerrar todas las conexiones (objetos de conexión SQL) con el fin de que la agrupación de conexiones puede volver a utilizar la conexión y el uso de la misma cadena connectinos, para asegurar que este es muy recomendable el uso uno de los webConfig.
Ten cuidado con los dataReaders con los que deberías cerrar su conexión (eso fue lo que me enloqueció).
Puede obtener más y mejores respuestas en [dba.stackexchange.com] (http://dba.stackexchange.com) donde los DBA de tiempo completo se juntan –