python 解决flask uwsgi 获取不到全局变量的问题
人气:0问题
在写flask,使用uwsgi启动的时候,涉及到多request线程访问同一个全局变量,发现不能获取到全局变量的值的修改,这在flask独立启动的时候是没有问题的。
伪代码
全局变量
@app.route('/request1/') def 函数1 修改全局变量 @app.route('/request2/') def 函数2 获取全局变量
严重怀疑是uwsgi的线程机制的问题,因为uwsgi是可以指定子进程的数目的,然而我设置子进程数目为1,之后,在处理函数1的时候是不能同时处理函数2的,怎么说,有点类似于javaweb中,uwsgi为了线程的并发,独立运行了多个进程,所以具有多个全局变量?
解决办法
想不改动源码直接从uwsgi上解决,搜索很久都没找到解决办法
找到一个别人从坑里爬起来的方法,就是用数据库等线程安全并且可以让多个线程公共访问的区域中存放数据,这样就能解决了。感觉数据库要用个sqlite才是最方便的。
以上这篇python 解决flask uwsgi 获取不到全局变量的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
您可能感兴趣的文章:
- 详解Python程序与服务器连接的WSGI接口
- Docker构建python Flask+ nginx+uwsgi容器
- VPS CENTOS 上配置python,mysql,nginx,uwsgi,django的方法详解
- Python开发之Nginx+uWSGI+virtualenv多项目部署教程
- CentOS7部署Flask(Apache、mod_wsgi、Python36、venv)
- 详解如何在Apache中运行Python WSGI应用
- Python WSGI的深入理解
- python Web开发你要理解的WSGI & uwsgi详解
- Python模块WSGI使用详解
- 详解python使用Nginx和uWSGI来运行Python应用
- 解决python3中自定义wsgi函数,make_server函数报错的问题
- 详解使用Nginx和uWSGI配置Python的web项目的方法
- 浅析Python 中的 WSGI 接口和 WSGI 服务的运行
加载全部内容