Dans un projet Java, j'utilise un JAR JAR
Connection con = dataSource.getConnection();
3 Réponses :
2 questions. P>
Premier, après avoir obtenu la première connexion, que faites-vous avec cela? Ferme-vous correctement (y compris toutes les ressources que vous avez ouvertes avec elle, comme déclaration et résultats)? P>
Deuxièmement, combien de connexions votre DB vous permettent-il des informations d'identification avec les informations d'identification que vous avez connectées? p>
La raison pour laquelle je pose ces questions est que les délais de temps peuvent être la quantité de temps nécessaire pour que la DB soit nettoyée après vous (parce que vous n'auriez peut-être pas bien fait) et libérez une connexion pour vous donner. Une grande partie de cela pourrait simplement être des délais d'expiration avant de publier des ressources de force. P>
Dépassez-vous vos connexions max actives dans votre pool de connexion et devez attendre que votre programme libère de vieilles connexions? P>
Je cours mes programmes juste après l'autre. Il semble de terminer tout correctement, mais pas totalement sûr de savoir comment savoir.
Si vous utilisez DBCP, vous pouvez imprimer dataSource.getnumActive () (vous devez d'abord la jeter à basicdatasource) avant d'essayer d'obtenir à nouveau une autre connexion.
était due à Java à l'aide de / dev / de dev / aléatoire au lieu de / dev / urandom pour créer une connexion SSH avec la base de données .... commutation à / dev / urandom fixe Ceci P>
Il convient de mentionner que vous pouvez utiliser l'argument jvm -djava.security.egd = fichier: / dev / ./ urandom pour y accomplir. Remarquez le supplément '.' ' dans l'argument. Voir Stackoverflow.com / Questions / 137212 / ... .
Probablement cet article Comment vérifier Le nombre maximum de connexions autorisées à une base de données Oracle? est intéressant pour vous