0

我试图了解使用 Session 的正确方法是什么。如果创建会话

session = Session()

每次都会创建到 db 的新连接,然后我必须尝试将我的会话重用于多个事务,否则我可以经常创建它。

你能帮我解决这个问题吗?

4

1 回答 1

1

SQLAlchemy 为您创建的引擎提供了内置的连接池(如果已经可用,则重用连接)。

“会话”本身绑定到一个引擎:

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

# create a Session
session = Session()

因此,会话将自动使用默认的连接池;您无需执行任何特殊操作即可获得此功能的好处。

您可以在文档中阅读有关其工作原理的更多信息(以及如何调整连接池以修改连接超时和池大小等值)。

于 2013-09-20T18:10:35.980 回答