5

У меня есть Spring приложение, развернутое в сервере JBoss EAP, используя следующие параметры:Как установить максимальный размер пула или размер соединения для BasicDataSource в Spring Framework

<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> 

Как настроить мин пул соединений и максимальный размер?

Любые ссылки или любые рекомендации для BasicDataSource будут очень полезны.

ответ

11

Вы можете добавить в свое userDataSource соответствующих свойств, например:

<bean:property name="initialSize" value="1" /> 
<bean:property name="maxActive" value="5" /> 
<bean:property name="maxIdle"  value="2" /> 

https://commons.apache.org/proper/commons-dbcp/configuration.html См для справки.

+0

привет, shagaan, большое спасибо, но есть ли принцип оптимального значения, который следует соблюдать при применении этих 3 настроек? – challenge

+2

Это зависит от количества одновременного доступа к вашей базе данных. Я не знаю оптимального значения, поскольку он очень специфичен для каждого приложения. Если у вас проблемы с производительностью, следите за своим приложением, вы будете явно видеть, сражаются ли ваши потоки, чтобы получить соединение db. В этом случае увеличьте его. –