Pony orm connection pooling



使用带有postgres(aws-rds(的python-pony-orm。。。使用它来执行原始sql。。。所以我围绕pony类创建了一个包装类来初始化数据库对象

self.db = Database()
self.db.bind(provider="postgres", user=self.username, password=self.password,
host=self.hostname, database=self.database)

每次调用一个方法来执行原始sql查询(在行下(时,都会建立一个新的连接。中的连接池何时启动

self.db.execute(query, query_args)

或者是否有设置连接池参数的方法。

根据订单文件

连接池没有必要跟踪数据库连接。当您需要连接时,您就有了连接,当您完成事务时,连接将返回到池中

但我看到每次进行选择呼叫时,连接总是打开的。例如:5个呼叫产生5个连接。如何设置最大连接数?

正如PonnyORM的文档所说:


bind(provider,*args,**kwargs数据库。

参数:provider(str(–数据库提供程序的名称。数据库提供程序是驻留在pony.orm.dbproviders包。它知道如何处理特定的数据库在数据库提供程序名称之后,应指定将传递给相应的DBAPI驱动程序。Pony提供以下服务:"sqlite"、"postgres"、"mysql"、"oracle"、"cockratchdb"。此参数也可以用作关键字参数。

args数据库驱动程序所需的参数
kwargs数据库驱动程序所需的参数。…

如果您正在使用Psycopg,您可以查看此文档以在数据库设置中使用更多参数。我不确定的是PonyORM是否在其库中考虑了该包的所有选项。

最新更新