Ich verwende Apache DBCP mit JNDI in meinem Tomcat-Container, um Verbindungen zu einer MySQL-Datenbank zu poolen. Alles funktioniert gut, aber ein Problem, das ich sehe, ist, dass, sobald eine Verbindung zusammengelegt wird, es nie freigegeben wird. Also nach einer Last-Spike-Verbindung sitzen sie für immer schlafen. Ist es eine Möglichkeit, den Pool durch context.xml-Parameter zu verkleinern? hier ist mein ocnfiguration:Wie wird der DB Connection Pool verkleinert?
defaultAutoCommit="false"
defaultTransactionIsolation="REPEATABLE_READ"
auth="Container"
type="javax.sql.DataSource"
logAbandoned="true"
removeAbandoned="true"
removeAbandonedTimeout="300"
maxActive="-1"
initialSize="15"
maxIdle="10"
maxWait="10000"
username="user"
password="password"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost/mydb"/>
Sie müssen auch die folgenden Eigenschaften festlegen: testWhileIdle, timeBetweenEvictionRunsMillis, validationQuery –