2013-09-20 6 views
0

Я пытаюсь понять, как правильно использовать сеанс. При создании сеанса сSQLAlchemy: создает ли сеанс создание нового соединения?

session = Session() 

создает новое подключение к БД каждый раз, то я должен попытаться повторно использовать свою сессию в течение нескольких сделок, в противном случае я могу создать его часто.

Можете ли вы мне помочь?

ответ

1

SQLAlchemy имеет встроенный connection pooling for the engine that you make (соединение используется повторно, если оно уже доступно).

«Сессия» сама по себе связана с двигателем:

# create a configured "Session" class 
Session = sessionmaker(bind=some_engine) 

# create a Session 
session = Session() 

Таким образом, сеанс будет использовать соединение по умолчанию пулы автоматически; вам не нужно делать ничего особенного, чтобы воспользоваться преимуществами этой функции.

Вы можете узнать больше о том, как это работает (и, если хотите, настроить пул соединений для изменения таких значений, как время ожидания соединения и размер пула) в the documentation.

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