powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / ODP.Net Connection Pool: to be or not to be?
13 сообщений из 13, страница 1 из 1
ODP.Net Connection Pool: to be or not to be?
    #38485849
Nicky_N
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем доброго времени суток.

По умолчанию при использовании OracleConnection из ODP.Net опция Pooling=true, таким образом при каждой операции пользователя (connection = new OracleConnection()) в БД создатся новая сессия, НО операции Close() и Dispose() не удаляют физическое подключение , а просто помещают его назад в пул. Т.е. на каждый чих пользователя - новая сессия. А удаляются они из БД только после выхода из приложения. Можно конечно открыть один статический коннект и держать его открытым для всех операций на протяжении работы с приложением, но как-то не по феншую.

С другой стороны можно установить Pooling=false. И тогда Close() и Dispose() удаляют сессию из БД. Как говорят тут открытие содениния с БД довольно дорогостоящая операция и преводят тесты, суть которых открывать и закрывать соединения с пулом и без. я их у себя прогнал на машине: на 300 итерациях с пулом 0,42 с, без пула - 12,5 с. Разница, конечно значительная, но имхо для пользователей будет не заметна.

Что посоветуете, коллеги?
...
Рейтинг: 0 / 0
ODP.Net Connection Pool: to be or not to be?
    #38485857
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nicky_NЧто посоветуете, коллеги?Pooling=true
...
Рейтинг: 0 / 0
ODP.Net Connection Pool: to be or not to be?
    #38485864
Nicky_N
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К,

а как быть с тем, что за один сеанс (до закрытия приложения) один пользователь может наплодить 20-30 сессий, а если пользователей 30-50, а в БД стоит ограничение на 200 сессий?
...
Рейтинг: 0 / 0
ODP.Net Connection Pool: to be or not to be?
    #38485873
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nicky_NАлексей К,

а как быть с тем, что за один сеанс (до закрытия приложения) один пользователь может наплодить 20-30 сессий, а если пользователей 30-50, а в БД стоит ограничение на 200 сессий?Не наплодит. Судя по описанию, у тебя неверное представление о работе пула соединений. Новая физическая сессия в БД создаётся только если нет свободных сессий в пуле.
...
Рейтинг: 0 / 0
ODP.Net Connection Pool: to be or not to be?
    #38485883
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КPooling=true

Точнее не скажешь
...
Рейтинг: 0 / 0
ODP.Net Connection Pool: to be or not to be?
    #38485919
Nicky_N
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К,

ок. Возникло еще 2 вопроса:
1) с использованием пула: после закрытия desktop-приложения, сессия сразу закрывается. Если использовать ASP.Net MVC сессия висит даже после закрытия браузера со статусом innactive и ждет пока админ сделает kill session)). как быть?
2) какие рекомендуемые настройки опций пула:

•Connection Lifetime

•Connection Timeout

•Decr Pool Size

•Incr Pool Size

•Max Pool Size

•Min Pool Size
...
Рейтинг: 0 / 0
ODP.Net Connection Pool: to be or not to be?
    #38485932
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nicky_N1) с использованием пула: после закрытия desktop-приложения, сессия сразу закрывается. Если использовать ASP.Net MVC сессия висит даже после закрытия браузера со статусом innactive и ждет пока админ сделает kill session)). как быть?Пул общий на "весь" веб-сервер. Соединения закроются после остановки IIS.
Nicky_N2) какие рекомендуемые настройки опций пула:

•Connection Lifetime

•Connection Timeout

•Decr Pool Size

•Incr Pool Size

•Max Pool Size

•Min Pool SizeВ зависимости от решаемой задачи.
...
Рейтинг: 0 / 0
ODP.Net Connection Pool: to be or not to be?
    #38485949
Nicky_N
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КПул общий на "весь" веб-сервер. Соединения закроются после остановки IIS.
Т.е. независимо от количества пользователей все они будут работать через единственный пул от IIS к СУБД?

Алексей КВ зависимости от решаемой задачи.
Интранет приложение (ASP.Net MVC) на 20-30 пользователей, причем одновременно работают не более 10, работа, в основном связана с получением отчетов.
...
Рейтинг: 0 / 0
ODP.Net Connection Pool: to be or not to be?
    #38485959
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nicky_NАлексей КПул общий на "весь" веб-сервер. Соединения закроются после остановки IIS.
Т.е. независимо от количества пользователей все они будут работать через единственный пул от IIS к СУБД?Да. Все пользователи сервера работают с одним пулом. В этом его прелесть.
Nicky_NАлексей КВ зависимости от решаемой задачи.
Интранет приложение (ASP.Net MVC) на 20-30 пользователей, причем одновременно работают не более 10, работа, в основном связана с получением отчетов.Я бы оставил значения по умолчанию, и изменял бы их по мере необходимости.
...
Рейтинг: 0 / 0
ODP.Net Connection Pool: to be or not to be?
    #38486076
Nicky_N
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К,

спасибо за помощь!
...
Рейтинг: 0 / 0
ODP.Net Connection Pool: to be or not to be?
    #38486088
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пожалст. :-)
...
Рейтинг: 0 / 0
ODP.Net Connection Pool: to be or not to be?
    #38486373
gpu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К,

С пулом надо быть аккуратнее если используются глобальные переменные пакетов и или устанавливается session info.
...
Рейтинг: 0 / 0
ODP.Net Connection Pool: to be or not to be?
    #38486378
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
gpuАлексей К,

С пулом надо быть аккуратнее если используются глобальные переменные пакетов и или устанавливается session info.Да, я в курсе.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / ODP.Net Connection Pool: to be or not to be?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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