powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / JBDC Conection pool убийца коннекций
16 сообщений из 16, страница 1 из 1
JBDC Conection pool убийца коннекций
    #39466030
Alegiter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Описание ситуации:
1.Запускается tomcat, на котором настроен в файлах server.xml и web.xml connection pool для базы (например, Oracle), при этом в базе создаются сколько-то коннекций (они же сессии).
2. Пользователь подключается к tomcat и из-под него обращается к базе. Новые коннекции не создаются, т.к. они берутся из pool
3. Пользователь закрывает окно браузера с подключением к tomcat, коннекция к базе при этом не убивается, она возвращается в pool.
4. dba (администратор базы данных) смотрит на эти коннекции (в oracle - представление v$session), видит, что они отъедают много ресурсов и их программно закрывает (в oracle - alter system kill session ...).
5. Пользователь подключается к tomcat, пытается обратиться к базе, коннекция берется из pool, но в базе эта коннекция убита (п.4)
6. Пользователь видит сообщение об ошибке
Вопрос:
Как разрулить эту ситуацию, чтобы пользователь ничего не увидел и была бы создана новая коннекция?

Если уже было такое, то дайте ссыль на пост)

Очень нужны примеры с кодом!
...
Рейтинг: 0 / 0
JBDC Conection pool убийца коннекций
    #39466045
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Соединения с БД "коннекциями" никто не называет. Соединение это не совсем сессия.
Большинство пулов умеют возможно валидировать соединение простейшим запросом, перед там как отдать пользователю.
Если не ленится, и читать мануал , то можно там обнаружить следующее
RTFMvalidationQuery - (String) The SQL query that will be used to validate connections from this pool before returning them to the caller. If specified, this query does not have to return any data, it just can't throw a SQLException. The default value is null. If not specified, connections will be validation by the isValid() method. Example values are SELECT 1(mysql), select 1 from dual(oracle), SELECT 1(MS Sql Server)
и ещё много других полезных настроек.
...
Рейтинг: 0 / 0
JBDC Conection pool убийца коннекций
    #39466050
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alegiter,
уволить DBA по п.п. 4.
Ну, или забить с ним стрелку для выяснения что ему нужно.
Самому протестировать как работает приложение на размере пула 1,2,10 соединений.
...
Рейтинг: 0 / 0
JBDC Conection pool убийца коннекций
    #39466063
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это что за технологии такие, что коннекции в пул возвращаются по закрытию бровзера?
...
Рейтинг: 0 / 0
JBDC Conection pool убийца коннекций
    #39466124
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alegiter...
Вопрос:
Как разрулить эту ситуацию, чтобы пользователь ничего не увидел и была бы создана новая коннекция?
...
Очень нужны примеры с кодом!
Код не нужен. Почти любой менеджер коллекций имеет настройку "валидировать коннекцию перед отдачей приложения". Просто нужно включить эту галочку.
...
Рейтинг: 0 / 0
JBDC Conection pool убийца коннекций
    #39466126
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Ну, или забить с ним стрелку для выяснения что ему нужно.

Даже без хрустального шара, рискну выдвину предположение:
1. Одни долбодятлы своим приложением БД роняют
2. Другой долбодятел пытается лечить проблемы СУБД методом KILL SESSION, роняет приложение

Все счастливы. У всех есть работа. Все ходят в офис и получают зарплату.
...
Рейтинг: 0 / 0
JBDC Conection pool убийца коннекций
    #39466142
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev,
да))). Согласен.
Тут главное решить, с кем будем бороться. С киляющим админом или всё таки с багами\глупостями в приложении.
Аффтар ушёл на стрелку.
...
Рейтинг: 0 / 0
JBDC Conection pool убийца коннекций
    #39466156
Alegiter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Leonid Kudryavtsev,

Расскажите, пожалуйста, подробнее по поводу этой настройки)
Какой "любой"? Где, так сказать, включать эту галочку?

Мб есть пример?
...
Рейтинг: 0 / 0
JBDC Conection pool убийца коннекций
    #39466157
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какие примеры?

http://tomcat.apache.org/tomcat-7.0-doc/jdbc-pool.html#Common_Attributes

Консалтинговые услуги: 500$ в сутки + проезд + гостиница + суточные ))) Приеду, найду потерявшуюся галочку и, даже, суточные не пожалею, что бы выпить с админом пива и попросить его больше не килять сессии. Все для заказчика. Даже своей своего здоровья (цирроза печени) мне не жалко )))
...
Рейтинг: 0 / 0
JBDC Conection pool убийца коннекций
    #39466159
Alegiter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Blazkowicz,

Я просматривал эти настройки, и да, там много полезного)

Но вот что, если такая ситуация всё же случилась! Что думаете, именно вы, стоит сделать?
...
Рейтинг: 0 / 0
JBDC Conection pool убийца коннекций
    #39466162
Alegiter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AlegiterКак разрулить эту ситуацию, чтобы пользователь ничего не увидел и была бы создана новая коннекция?

Всё это не моя затея) Просто возник вопрос!
И мне интересно не как этого избежать, а как это лечить)
...
Рейтинг: 0 / 0
JBDC Conection pool убийца коннекций
    #39466165
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alegiter,
попроси админа выдержку из vsession. Сколько коннектов ему не нравится?
...
Рейтинг: 0 / 0
JBDC Conection pool убийца коннекций
    #39466166
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alegiter...
И мне интересно не как этого избежать, а как это лечить
Сначала создаем себе проблемы, потом их решаем.
Всеобщая занятость - это хорошо!

AlegiterНо вот что, если такая ситуация всё же случилась! Что думаете, именно вы, стоит сделать?
я....выпить с админом пива ...
...
Рейтинг: 0 / 0
JBDC Conection pool убийца коннекций
    #39466172
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlegiterЯ просматривал эти настройки, и да, там много полезного)
Но вот что, если такая ситуация всё же случилась! Что думаете, именно вы, стоит сделать?
Вы прикалываетесь? Попробуйте добавить validationQuery в ваш pool в server.xml.
...
Рейтинг: 0 / 0
JBDC Conection pool убийца коннекций
    #39466188
Alegiter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Blazkowicz,

Т.е. если добавить этот атрибут, то это решит проблему, если админ убьёт сессию?
...
Рейтинг: 0 / 0
JBDC Conection pool убийца коннекций
    #39466190
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlegiterТ.е. если добавить этот атрибут, то это решит проблему, если админ убьёт сессию?
Пул будет использовать запрос, который вы укажете, чтобы проверить соединение. Если админ его убил, то проверка выдаст ошибку и пул не отдасте это соединение в приложение, а создаст новое.
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / JBDC Conection pool убийца коннекций
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]