Может ли Tomcat поддерживать несколько пулов соединений JDBC?

У меня есть приложение Spring Boot, которое подключается к разным базам данных MySQL. Я планирую добавить в это приложение поддержку пула соединений. Поддерживает ли пул соединений Tomcat JDBC (загрузочный пул Spring по умолчанию) более одного пула для каждой из моих баз данных?


person Bill Goldberg    schedule 12.05.2016    source источник
comment
Вы хотите, чтобы Tomcat или Spring обрабатывали пул соединений?   -  person cihan adil seven    schedule 12.05.2016
comment
Весна. Думаю это будет проще всего. По сути, мое приложение представляет собой веб-приложение, написанное с использованием Spring boot.   -  person Bill Goldberg    schedule 12.05.2016
comment
Пулы соединений Tomcat предоставляются как ресурсы JNDI. Вы можете добавить столько пулов соединений в конфигурацию Tomcat, сколько хотите, поскольку каждый пул должен иметь уникальное имя, чтобы его можно было добавить в реестр JNDI. Вы также можете использовать автономную библиотеку пула, например HikariCP, которую можно настроить с помощью конфигурации Spring Boot.   -  person manish    schedule 12.05.2016
comment
Сделал это, используя другую библиотеку пула C3p0. Я не хочу обрабатывать это на уровне сервера.   -  person Bill Goldberg    schedule 12.05.2016


Ответы (1)


Не уверен, как это будет отличаться в Spring Boot, но для стандартных веб-приложений вы можете настроить это на уровне веб-приложения, добавив в web.xml любое количество следующего:

<resource-ref>
    <res-ref-name>jdbc/yourname</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
</resource-ref>

и в context.xml соответствующий номер следующего:

<Resource name="jdbc/yourname" auth="Container" type="javax.sql.DataSource"
           maxActive="30"
           maxIdle="30"
           maxWait="2000"
           removeAbandoned="true"
           ...
person geert3    schedule 13.05.2016