gpt4 book ai didi

postgresql - SQLAlchemy/Flask/PostgreSQL 池连接

转载 作者:行者123 更新时间:2023-11-29 11:14:06 30 4
gpt4 key购买 nike

在长时间使用 Django 之后,我尝试了一些 Flask 和 SQLAlchemy,我必须说我非常喜欢它。但是有些东西我不明白:我有一个使用 PostgreSQL 的小型 Flask/SQLAlchemy 应用程序。在我的 __init__.py 文件中,我有:

from flask import Flask
from flask.ext.sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config.from_object('settings')
db = SQLAlchemy(app)

我想知道:

  1. 是否有自动连接池?还是每次调用 Model.query...都会创建一个新的数据库连接?
  2. 如果没有,我该如何配置?
  3. 如果是,默认值是多少?如何修改这些值?

非常感谢您的帮助!

最佳答案

Flask-SQLAlchemy 使用 SQLAlchemy 中的 create_engine 方法创建 SQLAlchemy 引擎,您可以在 documentation for the create_engine function 中阅读有关一些选项和默认值的信息. According to the Flask-SQLAlchemy documentation ,您可以指定一些特定于池的配置选项。您可以通过多种方式设置这些值,您可以在 Flask configuration 中阅读相关内容.您已经有了一个settings 配置模块,因此您可以在配置文件中添加类似...

SQLALCHEMY_POOL_SIZE=10

所以,是的,有自动连接池。 This is provided by SQLAlchemy by default .在发布此答案时,Flask-SQLAlchemy 允许您使用配置文件修改这些选项中的一些(尽管看起来有一个旧的 pull request to allow you to specify ANY create_engine parameter )。

如果您需要比 Flask-SQLAlchemy 提供更多的配置 SQLAlchemy 引擎支持,您可以使用没有 Flask-SQLAlchemy 包装器的 SQLAlchemy,或者修改 Flask-SQLAlchemy(可能合并拉取请求)以允许这样做。

关于postgresql - SQLAlchemy/Flask/PostgreSQL 池连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15939104/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com