Sto eseguendo SQL Server 2008 R2 SP1, su una scatola di Windows Server 2008. Ho uno script .NET in esecuzione da Visual Studio 2010 che esegue le seguenti operazioni:
- Raggiunge nel database
- Fa un cambiamento
- itera
Il numero totale di volte che ripeterà è 150, tuttavia si ferma a 100 connessioni e non riesco a capire perché. Potrei adattare il mio script per usare solo un singolo thread, ma preferirei sapere dove mi manca un'impostazione di connessione massima in quanto sarebbe più utile sapere per riferimento futuro.
Ecco dove ho controllato finora:
- Stringa di connessione SQL in Visual Studio 2010 (è impostata su 1000)
- Proprietà di connessione all'istanza del database SSMS (è impostata su 0 [infinito] connessioni utente)
- Cerca su Google alcune informazioni su Server 2008, sembra che possa gestire più di 100 connessioni
- Ho esaminato il mio codice a fianco del
SP_WHO2quale fornisce ulteriori informazioni sulle connessioni logiche, visto che il numero di connessioni inizia da 52 e gli errori di script con l'errore "Max Pooled Connections raggiunto" con 152 connessioni logiche. - Modificata la stringa di connessione da utilizzare
Data Source=PerfSQL02;Initial Catalog=Masked;Integrated Security=True;Max Pool Size=1000
Non sono sicuro di dove altro controllare, so di avere un sacco di parti mobili qui, ma ho la sensazione che mi sto perdendo un'impostazione massima della piscina da qualche parte.
System.Data.SqlClientvalore predefinito è 100, motivo per cui viene visualizzato l'esaurimento del pool di connessioni).