SQLAlchemy 连接池 举例
时间: 2024-11-16 09:13:36 浏览: 68
SQLAlchemy的连接池是一种优化技术,用于管理数据库连接,以减少频繁建立和关闭连接带来的性能开销。连接池会预先创建一定数量的数据库连接,并将其放入池中供后续的查询使用。当一个请求需要连接时,就从池中取出一个;使用完毕后,不是立即关闭连接,而是放回池中以备其他请求复用。
举个例子,你可以使用`sqlalchemy.pool.QueuePool`或`sqlalchemy.pool.SingletonThreadPool`这样的连接池配置:
```python
from sqlalchemy import create_engine, pool
# 创建一个带有一个连接的线程池连接池
engine = create_engine('postgresql://user:password@localhost/testdb',
poolclass=pool.SingletonThreadPool,
pool_size=1) # 设置单例连接池大小为1
# 或者创建一个队列连接池,比如5个连接
engine = create_engine('postgresql://user:password@localhost/testdb',
poolclass=pool.QueuePool,
pool_size=5)
```
在这个例子中,每个新请求会从池中获取一个连接,使用完后返回给池,而不是每次操作都创建一个新的连接。这大大提高了并发环境下的性能,减少了数据库服务器的压力。
阅读全文
相关推荐




















