Форум сайта python.su
0
Насколько я понимаю обычной для веб-приложений на Python является схема при которой при каждом HTTP-запросе создается соединение к БД, делается сам запрос данных, соединение разрывается.
Есть ли практика создания приложения с пулом постоянных соединений к БД?
Например при старте wsgi-сервера количество нитей ограничено и равно N, при этом сразу же создается N постоянных подключений к БД,
Как вариант, можно создавать новую сессию только тогда, когда нет свободных существующих - по нарастающей до N.
Имеет ли смысл это делать?
Офлайн
2
paganmindЕсли вы уверены что это поможет решить вашу задачу. Кстати, какая она?
Имеет ли смысл это делать?
Офлайн
0
DaevaornНемного предыстории…paganmindЕсли вы уверены что это поможет решить вашу задачу. Кстати, какая она?
Имеет ли смысл это делать?
Офлайн
33
При пуле соединений сразу исключается возможность использовать встроенный в СУБД механизм авторизации. Причем, на десктопе такой проблемы нет, т.к. пул (если он клиентский) создается с указанным логином/паролем.
Создавая свой пул соединений не забывайте соединения поддерживать (отправка “пустой” команды), чтобы сервер БД не обрывал их по таймауту.
Офлайн
0
Lexander10 соединений к БД с одним и тем же логином, сессия БД никак не связана с сессией пользователя. Просто вместо одной “трубы” используется 10
При пуле соединений сразу исключается возможность использовать встроенный в СУБД механизм авторизации. Причем, на десктопе такой проблемы нет, т.к. пул (если он клиентский) создается с указанным логином/паролем.
LexanderЭто да, как один из минусов
Создавая свой пул соединений не забывайте соединения поддерживать (отправка “пустой” команды), чтобы сервер БД не обрывал их по таймауту.
Офлайн