Estoy ejecutando SQL Server 2008 R2 SP1, en un cuadro de Windows Server 2008. Tengo un script .NET que se ejecuta desde Visual Studio 2010 que hace lo siguiente:
- Llega a la base de datos.
- Hace un cambio
- Iterates
El número total de veces que iterará es 150, sin embargo, se detiene en 100 conexiones y no puedo entender por qué. Podría ajustar mi script para usar un solo hilo, pero preferiría saber dónde me falta una configuración de conexión máxima, ya que será más útil saberlo para futuras referencias.
Aquí es donde he comprobado hasta ahora:
- Cadena de conexión SQL en Visual Studio 2010 (se establece en 1000)
- Propiedades de conexión de la instancia de la base de datos SSMS (se establece en 0 [infinito] conexiones de usuario)
- Busqué en Google alguna información sobre Server 2008, parece que puede manejar más de 100 conexiones
- Revisé mi código junto con el
SP_WHO2
que proporciona más información sobre las conexiones lógicas, al ver que el número de conexiones comienza en 52 y los errores de script con el error "Se han alcanzado las conexiones agrupadas máximas" en 152 conexiones lógicas. - Cambió la cadena de conexión para usar
Data Source=PerfSQL02;Initial Catalog=Masked;Integrated Security=True;Max Pool Size=1000
No estoy seguro de dónde más verificar, sé que tengo muchas partes móviles aquí, pero tengo la sensación de que me falta una configuración máxima de la piscina en alguna parte.
System.Data.SqlClient
predeterminado es 100, por lo que verá el agotamiento del grupo de conexiones).