Мы используем установку JBoss 4.2.2.GA / Hibernate 3.2.4.sp1 / SpringMVC 2.5 / MySQL 5.0.27.
Ниже приведен файл mysql-ds.xml:
<datasources>
<local-tx-datasource>
<jndi-name>myDS</jndi-name>
<connection-url>jdbc:mysql://127.0.0.1:3306/database?zeroDateTimeBehavior=convertToNull&useConfigs=maxPerformance</connection-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<user-name>user</user-name>
<password>password<password>
<exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>
<min-pool-size>5</min-pool-size>
<max-pool-size>100</max-pool-size>
<blocking-timeout-millis>30000</blocking-timeout-millis>
<idle-timeout-minutes>1</idle-timeout-minutes>
<metadata>
<type-mapping>mySQL</type-mapping>
</metadata>
</local-tx-datasource>
</datasources>
Глядя на консоль JMX -> service = ManagedConnectionPool, мы используем JBossManagedConnectionPool
.
Теперь проблема в том, что даже при посредственном трафике (сайт привлек около 5000 посещений / 15000 просмотров страниц вчера), в MySQL в спящем режиме 96 потоков (получено с помощью show processlist
).
Они сокращаются во времени, но мой настоящий вопрос заключается в том, почему jboss создает так много соединений? MaxConnections на MySQL = 250.
Любая помощь приветствуется!