веб-приложение создает неактивный сеанс в Oracle по JDBC - PullRequest
0 голосов
/ 18 октября 2011

У нас есть веб-приложение, написанное на Java, которое подключается к базе данных Oracle для извлечения данных.Недавно мы встретили слишком много неактивных сеансов в базе данных Oracle от JDBC, который является нашим веб-приложением, использующим инфраструктуру grails.Даже если мы нажмем кнопку обновления на странице пользовательского интерфейса, размер НЕАКТИВНОЙ СЕССИИ будет увеличиваться.Который будет зависать долгое время (в днях).

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

1 Ответ

0 голосов
/ 18 октября 2011

Мы уверены, что все соединения закрываются и устанавливаются в нуль после каждого процесса.

Если вы закрываете соединения вручную (что, похоже, имеет место, если вы используете JDBC), почему бы вам не использовать ведение журнала для анализа причин, вызывающих создание новых соединений?

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

Может быть слишком много maybes , пока вы не предоставите дополнительную информацию.

Обновление:

В комментариях вы сказали, что явно закрываете пул соединений . Почему
Настоятельно рекомендуется использовать пул соединений, поэтому ваше приложение не будет порождать новое соединение каждый раз, когда ему нужно будет взаимодействовать с базой данных, вместо этого используйте соединение из пула. Итак, сначала убедитесь, что вы действительно используете пул соединений. Скорее всего, вы используете сервер приложений (если это так, чем укажите, какой именно), и я также сомневаюсь, что вы используете простой JDBC. Скорее всего, это Hibernate или любой другой поставщик персистентности, верно?

Смотри также: Неактивный сеанс в Oracle от JDBC

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...