Impostazioni del pool sessioni

Utilizzare questa pagina per configurare le impostazioni del pool sessioni.

Questa pagina della console di gestione è comune in diversi tipi di risorse; ad esempio, le produzioni connessioni code JMS. Per visualizzare questa pagina, il percorso dipende dal tipo di risorsa ma generalmente si seleziona prima un'istanza del provider di risorse, quindi un'istanza del tipo di risorsa e, successivamente, si fa clic su Pool di sessioni. Ad esempio: fare clic su Risorse > JMS > Provider JMS->Provider di messaggistica predefinita ->Produzioni connessioni code->produzione_connessioni ->Pool sessione.

Timeout connessione

Specifica l'intervallo, in secondi, dopo il quale scade una richiesta di connessione e viene generata un'eccezione ConnectionWaitTimeoutException.

L'attesa è necessaria se è stato raggiunto il valore massimo di connessioni (Numero massimo connessioni) in un pool connessioni particolare. Ad esempio, se Timeout connessione è impostato a 300 e il numero massimo di connessioni è stato raggiunto, il gestore pool attende 300 secondi per una connessione fisica disponibile. Se la connessione fisica non è disponibile entro quel periodo di tempo, il gestore pool genera un'eccezione ConnectionWaitTimeoutException. Solitamente, è inutile ritentare il metodo getConnection(), poiché se è necessaria un'attesa più lunga, è necessario impostare su un valore più alto il Timeout connessione. Pertanto se questa eccezione viene rilevata dall'applicazione, l'amministratore deve riesaminare l'uso previsto dell'applicazione e regolare il pool connessioni e il database in base all'utilizzo.

Se Timeout connessione è impostato a 0, il gestore pool attende tutto il tempo necessario per allocare una connessione (operazione che viene eseguita quando il numero di connessioni è al di sotto del valore Numero massimo connessioni).

Se Numero massimo connessioni è impostato a 0, che consente un numero infinito di connessioni fisiche, il valore Timeout connessione viene ignorato.

Tipo dati Numero intero
Unità di misura Secondi
Valore predefinito 180
Intervallo int da 0 al valore massimo
Numero massimo connessioni

Specifica il numero massimo di connessioni fisiche che è possibile creare in questo pool.

Sono connessioni fisiche alla risorsa di backend. Una volta raggiunto questo numero, non vengono create nuove connessioni fisiche e l'utente resta in attesa fino a quando una connessione fisica, attualmente in uso, viene restituita al pool o viene generata un'eccezione ConnectionWaitTimeoutException.

Ad esempio, se il valore Numero massimo connessioni è impostato a 5 ed esistono cinque connessioni fisiche in uso, il gestore pool attende, per il tempo specificato in Timeout connessione, che una connessione si liberi.

Se Numero massimo connessioni è impostato a 0, il valore del timeout connessione viene ignorato.

Per ottenere migliori prestazioni, impostare il valore del pool connessioni su un valore più basso rispetto all'opzione Numero massimo connessioni nel contenitore Web. Le impostazioni su un valore basso, ad esempio 10-30 connessioni, hanno un funzionamento migliore delle impostazioni su un valore alto, ad esempio 100.

Se si utilizzano i cloni, esiste per ciascun clone un pool dati. È importante conoscere il numero dei pool dati quando si configurano le connessioni massime del database.

[AIX Solaris HP-UX Linux Windows] [iSeries] È possibile utilizzare Tivoli Performance Viewer per individuare il numero ottimale di connessioni in un pool. Se il numero di elementi in attesa simultanei è maggiore di 0, ma il carico della CPU non si avvicina al 100%, aumentare la dimensione del pool connessioni. Se il valore Percentuale utilizzata è coerentemente basso con carico di lavoro normale, ridurre il numero di connessioni nel pool.

[AIX Solaris HP-UX Linux Windows] [iSeries]
Tipo dati Numero intero
Valore predefinito 10
Intervallo int da 0 al valore massimo
Numero minimo di connessioni

Specifica il numero minimo di connessioni fisiche da mantenere.

Fino a quando non viene raggiunto questo numero, il thread di gestione pool non elimina le connessioni fisiche. Tuttavia non vengono effettuati tentativi per aumentare il numero di connessioni fino a questo numero. Se viene impostato un valore per Timeout scaduto, il valore minimo non viene mantenuto. Tutte le connessioni con un timeout scaduto vengono eliminate.

Ad esempio, se il valore Numero minimo di connessioni è impostato a 3 e viene creata una connessione fisica, il thread Timeout di non utilizzo non elimina tale connessione. Dallo stesso token, il thread non crea automaticamente due connessioni fisiche aggiuntive per raggiungere l'impostazione Numero minimo connessioni.

Tipo dati Numero intero
Valore predefinito 1
Intervallo int da 0 al valore massimo
Tempo di raccolta

Specifica l'intervallo, in secondi, tra le esecuzioni del thread di gestione pool.

Ad esempio, se Tempo di raccolta è impostato a 60, il thread di gestione pool viene eseguito ogni 60 secondi. L'intervallo Tempo di raccolta influisce sulla precisione delle impostazioni Timeout di non utilizzo e Timeout scaduto. Ad un intervallo minore corrisponde una maggiore precisione. Se il thread di gestione pool è abilitato, impostare il valore Tempo di raccolta su un valore inferiore a Timeout di non utilizzo e Timeout scaduto. Quando il thread di gestione pool è in esecuzione, elimina le connessioni che risultano non utilizzate per un periodo più lungo rispetto al valore di tempo specificato in Timeout di non utilizzo, fino a che non viene raggiunto il numero di connessioni specificate in Numero minimo connessioni. Il thread di gestione pool elimina inoltre le connessioni che sono state attive più a lungo del valore specificato in Timeout scaduto.

L'intervallo Tempo di raccolta influisce inoltre sulle prestazioni. Un intervallo minore indica che il thread di gestione pool verrà eseguito più spesso, degradando le prestazioni.

Per disabilitare il thread di gestione pool, impostare Tempo di raccolta su 0 o impostare Timeout di non utilizzo e Timeout scaduto su 0. La modalità che si consiglia di seguire per disabilitare il thread di gestione pool è impostare Tempo di raccolta su 0 in modo da ignorare Timeout di non utilizzo e Timeout scaduto. Tuttavia, se Timeout di non utilizzo e Timeout non scaduto sono impostati su 0, il thread di gestione pool viene eseguito ma verranno ignorate solo le connessioni fisiche il cui timeout scade su valori non zero.

Tipo dati Numero intero
Unità di misura Secondi
Valore predefinito 180
Intervallo int da 0 al valore massimo
Timeout di non utilizzo

Specifica l'intervallo in secondi dopo il quale una connessione non utilizzata o disattivata viene eliminata.

Per ottimizzare le prestazioni, impostare Timeout di non utilizzo su un valore superiore a Tempo di raccolta. Le connessioni fisiche non utilizzate vengono eliminate solo se il numero corrente di connessioni in uso non supera l'impostazione Numero minimo connessioni. Ad esempio, se il timeout di non utilizzo viene impostato a 120 e il thread di gestione pool è abilitato (il tempo di raccolta non è 0), l'eventuale connessione fisica che non viene utilizzata per due minuti viene eliminata. Si noti che la precisione di questo timeout, così come le prestazioni, sono influenzate dal valore Tempo di raccolta. Per ulteriori informazioni, consultare Tempo di raccolta.

Tipo dati Numero intero
Unità di misura Secondi
Valore predefinito 1800
Intervallo int da 0 al valore massimo
Timeout scaduto

Specifica l'intervallo in secondi prima che una connessione fisica venga eliminata.

L'impostazione di Timeout scaduto su 0 consente alle connessioni fisiche attive di restare nel pool per un tempo indeterminato. Per ottimizzare le prestazioni, impostare Timeout scaduto su un valore superiore a Timeout di raccolta. Ad esempio, se Timeout scaduto è impostato a 1200 e Tempo di raccolta su 0, le eventuali connessioni fisiche che sono state attive per 1200 secondi (20 minuti) vengono eliminate dal pool. Si noti che la precisione di questo timeout, così come le prestazioni, sono influenzate dal valore del tempo di raccolta. Per ulteriori informazioni, consultare Tempo di raccolta.

Tipo dati Numero intero
Unità di misura Secondi
Valore predefinito 0
Intervallo int da 0 al valore massimo
Politica di eliminazione

Specifica come eliminare le connessioni quando viene rilevata una connessione obsoleta o un errore di connessione irreversibile.

I valori validi sono EntirePool e FailingConnectionOnly. Le origini dati JCA (Java EE Connector Architecture) possono disporre di una delle due opzioni. Le origini dati WebSphere Versione 4.0 hanno sempre una politica di eliminazione EntirePool.

Tipo dati String
Valore predefinito FailingConnectionOnly
Intervallo
EntirePool
Tutte le connessioni presenti nel pool vengono contrassegnate come obsolete. Qualsiasi connessione non in uso viene chiusa immediatamente. Una connessione utilizzata viene chiusa e genera una StaleConnectionException nelle successive operazioni su tale connessione. Richieste getConnection successive dall'applicazione determinano nuove connessioni all'apertura del database. Se si sta utilizzando questa politica di eliminazione, esistono poche possibilità che alcune connessioni presenti nel pool vengano chiuse inutilmente quando non sono obsolete. Tuttavia, ciò si verifica molto raramente. Nella maggior parte dei casi, la scelta migliore Þ una politica di eliminazione EntirePool.
FailingConnectionOnly
Viene chiusa solo la connessione che ha causato la StaleConnectionException. Sebbene questa impostazione elimini la possibilità che connessioni valide vengano chiuse inutilmente, da una prospettiva dell'applicazione, rende più complicato il ripristino. Poiché viene chiusa solo la connessione che attualmente presenta errori, esiste un'ampia possibilità che la richiesta getConnection successiva dall'applicazione restituisca una connessione obsoleta dal pool, generando ulteriori eccezioni di connessioni obsolete.



I collegamenti contrassegnati (online) richiedono un accesso a Internet.

Concetti correlati
Attività correlate
Riferimenti correlati
Impostazioni del factory di connessione code WebSphere versione 5


Nome file: umj_sesspoolset.html