Ich habe auf meinem Server eine Spring/Hibernate/MySQL-Anwendung bereitgestellt. Seit einigen Tagen habe ich das Problem, dass meine Anwendung anscheinend viele Verbindungen zur Datenbank öffnet. Ich habe diesen Hinweis aus einer Netstat-Ausgabe, die wie folgt aussieht (IP-Adressen verdeckt):
tcp6 0 0 ************:53547 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:53595 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:53645 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:34986 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:53669 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:53710 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:53757 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:53716 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:53627 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:53752 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:53505 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:53549 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:35185 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:53604 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:35331 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:53488 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:34938 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:34987 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:53695 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:35380 ************:3306 TIME_WAIT 0 0 -
tcp6 0 0 ************:53651 ************:3306 TIME_WAIT 0 0 -
Wenn ich jedoch auf die MySQL Workbench Server Health-Registerkarte für meine MySQL-Datenbank schaue, sieht alles so aus, als ob alles in Ordnung wäre (siehe beigefügter Screenshot).
Außerdem hat meine Anwendung eine normale Leistung.
Wir entwickeln derzeit aktiv an der Anwendung, können aber keine Codeänderungen erkennen, die sich auf dieses Verhalten auswirken. Es muss offensichtlich eine Änderung gegeben haben, aber es könnte auch ein Konfigurationsproblem oder Ähnliches sein.
Könnte es ein Hibernate-Verbindungspool sein? Das Seltsame ist, dass alle Verbindungen warten.
Ich bin dankbar für alle Ideen und Hinweise!
Bearbeitung - Hibernate-Konfiguration (mit Spring)
com.mysql.jdbc.Driver
jdbc:mysql://************:3306/********
********
********
WEB-INF/hibernate.hbm.xml
org.hibernate.cfg.AnnotationConfiguration
org.hibernate.dialect.MySQL5InnoDBDialect
0
false
cglib
update
LÖSUNG: Ich habe mich jetzt entschieden, die Tomcat JNDI-Datenquelle zu verwenden, und es funktioniert endlich. Es werden nur 11(!!) Verbindungen zur Datenbank genutzt ;) Danke @Vineet Reynolds