2017-05-16 3 views
0

J'utilise UCP jar 11.2.0.3.0 pour le pool de connexions DB pour Oracle. Voici quelques configurations de connexion DBLa collecte de connexion Oracle ne fonctionne pas comme prévu

<property name="datasource.connections.connectionHarvestTriggerCount">100</property> 
<property name="datasource.connections.connectionHarvestMaxCount">50</property> 
<property name="datasource.connections.min_size">5</property> 
<property name="datasource.connections.max_size">500</property> 
<property name="datasource.connections.idle_test_period">100</property> 
<property name="datasource.connections.testConnectionOnCheckout">true</property> 
<property name="datasource.connections.checkoutTimeout">60000</property> 
<property name="datasource.connections.timeout">300</property> 
<property name="datasource.connections.preferredTestQuery">SELECT 1 from dual</property> 
<property name="datasource.max_statements">200</property> 
<property name="datasource.connections.wait.timeout">3</property> 

J'attends est connexion utilisé jusqu'à compte atteint 400 la récolte devrait commencer et près de 50 connexions une place-les dans la piscine. Mais je suis confronté à une exception de connexion, même si seulement 30-40 connexions sont utilisées. Y a-t-il une configuration qui me manque ici?

Répondre

0

La collecte ne tient jamais compte du pool de connexions configuré dans l'application. Il vérifie simplement ce que toutes les connexions ont ouvert à partir de l'application et calcule le nombre maximal de déclenchements et le nombre de déclenchements de collecte et enfin ferme les connexions. Par exemple, vous pouvez configurer le pool de connexions 100, mais l'application ne démarrera pas toutes les 100 connexions à la fois. Ainsi, l'application pourrait avoir 40 connexions. notre nombre maximal est de 10 et le nombre de déclenchements de récolte est de 10, car vous vous attendez à ce que lorsque l'application est pleine avec 90 connexions, récoltez-en 10 et gardez-en 80 pour sauvegarder votre application. Mais Harvesting commencera à fermer les connexions à partir de l'utilisation atteinte à 30 seulement lorsque votre application a activé 40 connexions.