一直以来对dbcp对mysql的配置比较疑惑,始终没有找到如何配置的优化方案,这比较让人困惑,关键是没有找到任何有帮助的文档和资料,网上搜到的一些资料也都千篇一律,没有太多的借鉴意义,希望有朋友可以给一些有帮助的建议
<!-- 默认的事务隔离级别 -->
<property name="defaultTransactionIsolation" value="REPEATABLE_READ"></property>
<!-- 初始化连接数 -->
<property name="initialSize" value="10"></property>
<!-- 最大连接数量 -->
<property name="maxActive" value="100"></property>
<!-- 最大空闲数量 -->
<property name="maxIdle" value="20"></property>
<!-- 最小空闲数量 -->
<property name="minIdle" value="5"></property>
<!-- 超时等待时间 -->
<property name="maxWait" value="60000"></property>
<property name="poolPreparedStatements" value="true"></property>
<property name="maxOpenPreparedStatements" value="10"></property>
<property name="testOnBorrow" value="true" />
<property name="validationQuery">
<value>select 1 from DUAL</value>
</property>
这就是个连接池,底层都封装了,没有什么优化不优化吧。
影响数据库性能最关键的还是SQL语句。
优化是和需求相关的 也就是你项目的吞吐量 如果你只有100个并发 就没问题 否则 就增大maxActive