1

我正在使用 z3c.saconfig 在 Plone/Zope 应用程序中配置 sqlalchemy。在这个应用程序中,我们使用named_scoped_session("dbmyapp")z3c.saconfig 方法创建了一个 Session sqlalchemy。会话已创建并且运行良好。但是我们只为应用程序创建了一个会话。

这个 [one Session sqlalchemy / app] 会成为应用程序的瓶颈吗?

顺便说一句,我们可以为每个应用创建多个会话吗?有什么优势吗?

buildout.cfg 的片段:

<configure xmlns="http://namespaces.zope.org/zope"
    xmlns:db="http://namespaces.zope.org/db">
    <include package="z3c.saconfig" file="meta.zcml" />

    <db:engine name="dbmyapp" url="oracle://user:pass@hostname:port/sid" />
    <db:session name="dbmyapp" engine="dbmyapp" />
</configure>
4

1 回答 1

1

会话机制负责为每个线程提供一个连接;因为您只能在一个线程中执行顺序代码,所以连接不会成为瓶颈。

代码的不同部分可以请求自己的会话;会话机制将根据需要重用会话连接。这不是你通常需要担心的事情,这一切都由z3c.saconfig它的依赖项为你处理。

于 2013-09-08T13:25:00.870 回答