如何在Spring Framework中设置BasicDataSource的最大池大小或连接大小

Sek*_*har 5 spring database-connection connection-pooling apache-commons-dbcp

我使用以下设置在JBoss EAP服务器中部署了Spring应用程序:

<bean:bean id="userDataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
    <bean:property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
    <bean:property name="url" value="jdbc:oracle:thin:@10.8.1.5:1521:DB"/>
    <bean:property name="username" value="WEBDB"/>
    <bean:property name="password" value="WEBDB"/>
</bean:bean>
Run Code Online (Sandbox Code Playgroud)

如何配置连接池的最小和最大大小?

BasicDataSource的任何参考或任何最佳实践都将有很大帮助.

Arn*_*lay 12

您可以向userDataSource添加适当的属性,例如:

<bean:property name="initialSize" value="1" />
<bean:property name="maxActive"   value="5" />
<bean:property name="maxIdle"     value="2" />
Run Code Online (Sandbox Code Playgroud)

请参阅https://commons.apache.org/proper/commons-dbcp/configuration.html以供参考.

  • 它取决于您在数据库上的并发访问数.我不知道任何最佳值,因为它对每个应用程序都非常具体.如果您遇到性能问题,请监控您的应用程序,您将快速查看您的线程是否正在努力获取数据库连接.在那种情况下增加它. (2认同)