我想使用pgpool或pgbouncer作为我的烧瓶应用程序的外部连接池。 flask-sqlalchemy扩展程序似乎没有公开将连接池更改为NullPool的方法。有没有办法做到这一点?
答案 0 :(得分:2)
虽然应该可以使用apply_driver_hacks方法,但我强烈建议不要使用它。
本地计算机上的TCP开销可以忽略不计,但是身份验证和协商(例如编码)肯定不是。保持池在Flask中始终有用,如果需要,可以使用SQLALCHEMY_POOL_SIZE
,SQLALCHEMY_POOL_TIMEOUT
,SQLALCHEMY_POOL_RECYCLE
和SQLALCHEMY_MAX_OVERFLOW
settings进行配置。
如果你只想减少开销(虽然完全可以忽略不计)并且你的一个实例Flask应用程序是唯一连接到Postgres的东西,那么从混合中删除PgBouncer / PgPool会更好。