热汤玛士 2021-08-03 16:19 采纳率: 0%
浏览 69

sqlalchemy连接池每次都被初始化

在使用sqlalchemy连接池的时候,create engine放在一个class的__init__函数中,每次别的模块去调用这个class的时候都会重新初始化一个连接池,导致连接池没有发挥出效果来,每次调用这个class都会产生一个连接池,并且只使用这个连接池中的一个连接。
连接池状态如图
代码如下
def init(self): self.engine = create_engine(MYSQL_URI, connect_args={'charset': 'utf8'}, pool_size=20, max_overflow=0,pool_timeout=1,pool_recycle=100, encoding="utf-8") self.metadata = MetaData(self.engine) self.Base = declarative_base(metadata=self.metadata) self.conn = self.engine.connect()

请问这种问题改怎么处理

  • 写回答

3条回答 默认 最新

  • CSDN专家-sinJack 2021-08-03 16:29
    关注

    连接池应该封装在一个工具类中,每次需要连接时,从工具类中获取连接对象就行了。
    可参考:https://www.cnblogs.com/yinliang/p/11784911.html
    如有帮助,望【采纳】。

    评论

报告相同问题?

问题事件

  • 创建了问题 8月3日

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题