python - 如何在 python Web 服务器中保留数据库连接

标签 python mysql flask

我正在查看 Flask 教程,它建议为每个 Web 请求创建一个新的数据库连接。这是做事的正确方法吗?我一直认为数据库连接应该只为每个线程创建一次。能否做到这一点,同时使用 Flask 或其他 Python Web 服务器将应用程序保持线程安全。

最佳答案

出于学习目的可能是的。但是在生产环境中运行的实际应用程序中,这根本不是一个理想的情况。

通常,您总是希望在应用程序和数据库之间有一个连接池。无论您使用哪种语言/数据库,这都是一种常见的解决方案。

一个数据库连接池维护着许多打开的连接。应用层只需要一个没有被使用的连接,当应用层不再需要它们时,连接就会被释放。 “释放”是指它们被返回到池中以便再次使用。

底线,连接不是根据请求打开/关闭的。它们从/向数据库连接池获取/释放。

例如,对于 Python 和 mysql,您可以使用 PySQLPool .

关于python - 如何在 python Web 服务器中保留数据库连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6688413/

相关文章:

python - xml 文件上的 XPath 表达式

python - 体素化 STL 文件?

python - 如何将 textmate 指向我在命令行获得的相同版本的 python

python - 类型错误 : __init__() takes at least 2 arguments (1 given) error

mysql - 从字符串中保存的表名中选择

python - Heroku : request. 表单上的 Flask 在处理大量 POST 数据时速度非常慢?

python - Python 字典中 switch/case 替换失败

javascript - 带文件上传的多步骤表单

mysql - 向 MySQL 添加索引,但前提是它不存在

python - 如何获取flask中html标签内变量的值?