Пул соединений с базой данных без сервера приложений в java

Я разрабатываю приложение на java, которое будет работать без сервера приложений (это не веб-приложение). Обычно серверы приложений предоставляют пул соединений с базой данных, что быстрее, чем создавать новое соединение каждый раз, когда вам нужно выполнить запрос.

Я хотел бы знать, есть ли что-то подобное при разработке настольных приложений.

Мой проект подключается к базе данных (DB2) и Elastic Search. Оба нуждаются в создании соединения. Что-то, что работает с обоими, было бы здорово.

Я очень ценю любую помощь.


person Ranieri Mazili    schedule 09.12.2016    source источник
comment
Вы по-прежнему можете создать пул соединений для настольного приложения. Посоветуйте, почему вы не можете его создать?   -  person Jacques Ramsden    schedule 09.12.2016
comment
Я могу создать его, но мое приложение прослушивает очередь JMS, и для каждого сообщения ему необходимо обогатить данные, запрашивая базу данных и вставляя эти данные в elasticsearch. В зависимости от количества поступающих сообщений, например, 1000 сообщений за 2 минуты, я думаю, что лучше всего работать с пулом, а не создавать новые 1000 соединений с базой данных и эластичным поиском. Я просто ищу лучшую производительность.   -  person Ranieri Mazili    schedule 09.12.2016
comment
Вы можете использовать потоки и назначить несколько соединений, скажем, 100, а затем каждый поток может блокироваться до тех пор, пока не получит уведомление о разблокировке, после чего он может проверить, доступны ли соединения и т. д., и продолжить?   -  person Jacques Ramsden    schedule 09.12.2016
comment
Взгляните на это: commons.apache.org/proper/commons-dbcp   -  person VeryNiceArgumentException    schedule 09.12.2016


Ответы (1)


Я думаю, что Apache Commons DBCP решит проблему с пулом соединений JDBC.

Спасибо "Рафаэль Мойта" за подсказку.

person Ranieri Mazili    schedule 12.12.2016