Пул соединений Tomcat JDBC, соединения созданы более чем maxActive
Я использую Tomcat 8.0.39, сервер MySQL 5.7 и MySQL коннектор 5.1.34, вот моя конфигурация context.xml
<Resource
name="jdbc/provider"
auth="Container"
driverClassName="com.mysql.jdbc.ReplicationDriver"
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
url="******"
username="******"
password="******"
maxActive="40"
maxIdle="10"
minIdle="10"
maxWait="4500"
maxAge="21600000"
minEvictableIdleTimeMillis="60000"
timeBetweenEvictionRunsMillis="5000"
validationInterval="0"
removeAbandoned="true"
removeAbandonedTimeout="60"
validationQuery="SELECT 1"
testOnBorrow="true"
type="javax.sql.DataSource"
logAbandoned="true"/>
Количество соединений возрастает до 130, но ожидается 40 на макс.
1 ответ
Tomcat обновил библиотеку пула подключений по умолчанию до Apache Commons DBCP 2.x в Tomcat 8. Tomcat 7 и более ранние версии использовали DBCP 1.x. DDBCP 2 использует maxTotal вместо maxActive для ограничения количества соединений. Есть и другие заметные изменения. Пожалуйста, ознакомьтесь с руководством по миграции Tomcat 8 в разделе Пулы соединений с базой данных.