Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将pyodbc连接保持在全局in Flask中-安全吗?_Python_Multithreading_Flask_Pyodbc - Fatal编程技术网

Python 将pyodbc连接保持在全局in Flask中-安全吗?

Python 将pyodbc连接保持在全局in Flask中-安全吗?,python,multithreading,flask,pyodbc,Python,Multithreading,Flask,Pyodbc,从总体上回答了我想问的很多问题,但似乎表明,如果操作正确,也可以在全球范围内建立联系。我想问一下,我关于以这种方式使用pyodbc的具体假设是否正确 在我的例子中,连接是只读的,并且在一个请求中一次打开的查询不会超过一个。考虑到这些限制,在全局环境中保持pyodbc连接的持久性安全吗?我目前的做法是这样的 所有查询都通过一个函数执行db\u execute() 这将查找全局类成员glb.cnxn,如果None,则将其打开 然后返回结果。cur=glb.cnxn.cursor()和cur.exec

从总体上回答了我想问的很多问题,但似乎表明,如果操作正确,也可以在全球范围内建立联系。我想问一下,我关于以这种方式使用pyodbc的具体假设是否正确

在我的例子中,连接是只读的,并且在一个请求中一次打开的查询不会超过一个。考虑到这些限制,在全局环境中保持pyodbc连接的持久性安全吗?我目前的做法是这样的

所有查询都通过一个函数执行
db\u execute()

这将查找全局类成员
glb.cnxn
,如果
None
,则将其打开
然后返回结果。
cur=glb.cnxn.cursor()
cur.execute()
光标仅用于获取列名,从不重复使用

这安全吗?

请注意:

这种方法的危险在于长时间运行的查询将阻止其他请求使用
glb.cnxn
。因此,请求页面的第二个用户必须等待第一个用户查询完成

使用
g
“请求全局”链接帖子中的答案效果更好