Выбор библиотеки пула Java JDBC в 2011/2012?
Какую библиотеку пула соединений JDBC я должен использовать для нового проекта приложения (а не веб-приложения)?
- Apache DBCP имеет достаточно нерешенные проблемы, которые доводятся до 2.0, я думаю.
- C3P0, похоже, прекращается.
- И оба из них выглядят относительно медленно.
- Proxool мертв.
- DBPool почти нет сообщества (по крайней мере, я не нашел публичного - никаких форумов, нет списков рассылки...)
- Apache Tomcat Pool выглядит непригодным для использования без Tomcat
- Я нашел статью SQL Datasources на веб-сайте Oracle, но, похоже, ее можно применять только для апплетов, работающих в контейнерах, таких как сервлеты и веб-службы.
Должен ли я выбрать BoneCP? У меня нет огромных требований. Мне просто нужен хороший и простой в использовании пул подключений к базе данных, который находится в активной разработке. Библиотека, автор которой может отвечать на сообщения об ошибках, отвечает на некоторые конкретные вопросы и т.д.
Кстати, я использую только MySQL. Я обнаружил, что драйвер MySQL поддерживает интерфейс DriverManager, но я не уверен, действительно ли он объединяет соединения или нет.
Ответы
Ответ 1
Вы провели хорошие исследования. Я бы сказал, продолжайте с BoneCP. Несколько лет назад я бы предложил c3p0, но в настоящее время он некоторые открытые и нерешенные проблемы. Слишком плохо, на самом деле. Автор BoneCP, кстати, также активен здесь в SO.
Ответ 2
Возможно использование Tomcat Connection Pool без Tomcat, это всего лишь пара .jars, которые вы можете включить в любое программное обеспечение. Я успешно использовал Tomcat Connection Pool с Resin и Jetty серверы приложений.
Ответ 3
Другой альтернативой является Vibur DBCP. Это новый параллельный пул соединений JDBC на основе динамических прокси-серверов Java. Он быстрый, имеет сжатый исходный код, поддерживает параметр справедливости, кэширование Statement JDBC, ведение журнала запросов SQL и многие другие функции.
Vibur DBCP доступен в центральном репозитории Maven, на веб-сайте показана необходимая зависимость Maven, различные примеры конфигурации (с Spring, Hibernate 3.x/4.x/5.x) и все параметры конфигурации.
Vibur DBCP требует Java 1.7.
Отказ от ответственности: я автор Vibur DBCP.
Ответ 4
Я знаю, что слишком поздно для ответа, но я только что нашел интересную ссылку , которая предоставила более широкие возможности для ответа на большинство ваших запросов. Но в конце HikariCP и BoneCP намного лучше, чем другие параметры.