Problema
Il tuo sito Web sta generando errori simili a quello riportato di seguito indicante che è stata raggiunta la dimensione massima del pool:
An exception of type 'System.InvalidOperationException' occurred in System.Data.dll but was not handled in user code Additional information: Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached.
Causa
Quando ricevi questo messaggio, significa che il tuo sito Web sta utilizzando tutte le sue connessioni al database SQL disponibili (il limite predefinito è 15 connessioni per installazione di DotNetNuke). In media, un sito Web DotNetNuke correttamente eseguito utilizza solo 2-3 connessioni SQL, quindi un limite di 15 connessioni per installazione dovrebbe essere più che sufficiente per consentire a un sito Web di funzionare normalmente. Se ricevi questo errore, questo è generalmente causato da un bug in un modulo sul tuo sito Web che sta aprendo connessioni al server SQL e non le rilascia una volta completate.
In alcune circostanze, questo errore può essere causato anche da un carico di elaborazione estremamente elevato o da un carico transazionale estremamente elevato.
Risoluzione
Se ti trovi in un ambiente di hosting condiviso, dovresti aggiornare tutti i moduli all'ultima versione per assicurarti di eseguire i moduli più aggiornati. Se uno dei tuoi moduli sta esaurendo il tuo pool di connessioni, lo sviluppatore potrebbe aver risolto il problema con un aggiornamento. Quando si verifica questo errore, i clienti di hosting condiviso devono contattare il supporto tecnico. Se il problema si verifica attivamente, potremmo essere in grado di fornire informazioni sul modulo che causa l'errore.
Se sei su un server dedicato e hai semplicemente bisogno di più connessioni SQL, puoi aggiornare le voci "max pool size" in entrambe le stringhe di connessione seguendo queste istruzioni:
- Accedi al tuo server utilizzando Desktop remoto.
- Apri Risorse del computer (Windows - E) e vai su C:\inetpub\vhosts\[dominio]\httpdocs
- Fai doppio clic sul file web.config . Questo potrebbe essere semplicemente elencato come web se la struttura del file è impostata per nascondere le estensioni. Questo aprirà Visual Basic o un editor simile.
- Trova le stringhe di connessione, saranno simili agli esempi seguenti:
- Modifica la dimensione massima del pool=X valore alla dimensione della piscina richiesta.
- Salva e chiudi il tuo file web.config.