2014-11-20 3 views
0

В настоящее время я работаю над веб-приложением, где мне нужно сохранить некоторые данные на моем MYSQL db. Db и веб-сервер установлены на разных хостах.Постоянное подключение к базе данных?

Я работаю с сервлетами Java, JSP и MYSQL.

Мой вопрос: должен ли быть установлен постоянный контакт при запуске и сохранен в контексте сервера или должен быть временный для каждого отдельного запроса?

+0

Обычно вы используете пул соединений, который содержит (настраиваемое) количество подключений более или менее неопределенно. – Thor84no

+0

Если вы делаете это без объединения пулов, используйте одно соединение на запрос сервлета не на запрос. – developerwjk

ответ

0

Обычный подход заключается в использовании пула соединений.

Пул соединений содержит обычно небольшое количество открытых подключений (подключенных к БД) и обеспечивает абстракцию для вашего приложения.

Таким образом, ваше приложение будет избегать накладных расходов на поиск сервера, установление соединения, закрытие соединения и т. Д. При каждом запросе, что принесет жертву производительность.

В то же время пул соединений может избежать ситуации, когда слишком много соединений пытаются использовать одну и ту же базу данных.

Обычно эти соединения живут до тех пор, пока контейнер не встает, так как до этого контейнер управляет этим бассейном.

Этот link описывает, как Tomcat использует библиотеку commons-dbcp для предоставления пула соединений JDBC.

Смежные вопросы