Python Web 应用程序中的数据集
Python dataset in web application
我写了一个简单的 REST API,使用 pybottle 作为 Web 框架,dataset 作为数据库处理程序。我想知道数据集如何处理(打开和关闭)与数据库的连接,以及我需要在多大程度上关注这个问题。
考虑以下几点:
db = dataset.connect('sqlite:///database.db')
table = db['table']
def some_function():
# do some manipulation (eg. insert) in 'table'
当我从 Web 应用程序(在另一个文件中)调用 some_function()
时会发生什么?执行函数后数据集是否正确打开和关闭与数据库的连接?还是每次函数调用都有一个新的打开的连接?
Python 中的每个 SQL driver 都在 Python DB API PEP0249 之后。
据我所知,您正在为 SQLite 使用 driver,因此它应该遵循相同的规则。
SQLAlchemy 有一种 built-in 方法可以建立持久连接并避免连接中断。您可以创建一个方法 get_connection()
returns 一个 Database
object 或者如果没有活动的则重新建立连接。
检查 connect
documentation and source code 以查看库如何包装与数据库的通信。
我写了一个简单的 REST API,使用 pybottle 作为 Web 框架,dataset 作为数据库处理程序。我想知道数据集如何处理(打开和关闭)与数据库的连接,以及我需要在多大程度上关注这个问题。
考虑以下几点:
db = dataset.connect('sqlite:///database.db')
table = db['table']
def some_function():
# do some manipulation (eg. insert) in 'table'
当我从 Web 应用程序(在另一个文件中)调用 some_function()
时会发生什么?执行函数后数据集是否正确打开和关闭与数据库的连接?还是每次函数调用都有一个新的打开的连接?
Python 中的每个 SQL driver 都在 Python DB API PEP0249 之后。 据我所知,您正在为 SQLite 使用 driver,因此它应该遵循相同的规则。
SQLAlchemy 有一种 built-in 方法可以建立持久连接并避免连接中断。您可以创建一个方法 get_connection()
returns 一个 Database
object 或者如果没有活动的则重新建立连接。
检查 connect
documentation and source code 以查看库如何包装与数据库的通信。