Пул соединений 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 в разделе Пулы соединений с базой данных.

Другие вопросы по тегам