首页 > 编程语言 >python - flask wsgi

python - flask wsgi

时间:2024-02-15 23:11:21浏览次数:29  
标签:__ wsgi python app flask static import

  1. 直接使用flask自带的wsgi,关闭debug模式会出现以下警告
from flask import Flask
app = Flask(__name__, static_folder="./static")
app.run(host="0.0.0.0", port=8080, debug=False)

# WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
  1. 在查找资料后发现可以使用gevent来解决这个问题
from gevent import monkey
from gevent.pywsgi import WSGIServer
monkey.patch_all()
from flask import Flask

app = Flask(__name__, static_folder="./static")

WSGIServer(("0.0.0.0", 8080), app).serve_forever()
  1. 但是在自己的项目会出现一种情况:客户端请求A接口返回200,在请求另外一个不存在的B接口返回404后,客户端重新请求A接口会返回405,试了挺多种方法都没有效果,最后发现用flask自带的wsgi,虽然会出现WARNING,但是并不会出现以上的问题,所以猜测可能跟gevent的wsgi有关,最后换了tornado的wsgi就没有出现以上问题,也不会出现WARNING。
from tornado.httpserver import HTTPServer
from tornado.wsgi import WSGIContainer
from tornado.ioloop import IOLoop

app = Flask(__name__, static_folder="./static")

server = HTTPServer(WSGIContainer(app))
server.listen(8080)
IOLoop.current().start()

标签:__,wsgi,python,app,flask,static,import
From: https://www.cnblogs.com/wstong2052/p/18016734

相关文章

  • python基础学习7-文件以及oa操作
    操作文件步骤打开/创建变量名=open(filename,mode,encoding)操作变量名.read()变量名.write()关闭变量名.close()withopen(...)asfile:passjson模块json.dumps(obj)json(lst,ensure_ascli=False,indent=4)防止中文乱码,和提供缩进美化json.loads(......
  • python类的实现中有关__setattr__原理问题
    python类的实现中有关__settar__原理问题具体解决思路问题代码段:classCustomAttributes:def__init__(self):self._attributes={}def__setattr__(self,name,value):#允许设置名为'_attributes'的属性,这是实现所必......
  • Python 爬取历史天气数据
    网站原始数据https://www.tianqishi.com/hangzhou/20240214.html源码importrequestsfrombs4importBeautifulSoupimportdatetimedefgetEachDayWeather(loaction,timeStamp):"""获取每一天的天气数据"""#1.获取网页地址urlHea......
  • Python--操作列表
    Python--操作列表遍历整个列表对于每个元素的执行操作,使用单数和复数的名称,可用帮助判断代码片段处理的是单个列表元素还是整个列表.magicians=['alice','bob','charlie']formagicianinmagicians:print(magician)#alice#bob#charlie在for循环中可以执......
  • Python笔记09——Set(集合)
    九、集合9.1基础集合(set)是一个无序的不重复元素序列,可进行交、集、差等常见的集合操作。与序列的区别:无序,每次输出顺序随机;元素不重复;创建格式:parame={value01,value02,...}或者set(value)(创建空集合只能用set())创建集合示例set1={1,2,3,4}#直接使用......
  • 机器视觉-使用YoloV8的Python API
    参考文档:https://docs.ultralytics.com/modes/predict/#working-with-resultshttps://zhuanlan.zhihu.com/p/655162922https://thinkinfi.com/motorcycle-helmet-detection-using-deep-learning/示例说明关于yoloruntimesettings.yaml对训练过程的干扰yolosettings.y......
  • Python 机器学习 线性回归 正则化线性模型
    ​ Python机器学习中,正则化是一种减少模型过拟合的技术,通过在损失函数中添加一个正则化项来实现。对于线性回归模型,常见的正则化方法有Lasso回归(L1正则化)、岭回归(L2正则化)和弹性网络回归(同时使用L1和L2正则化)。这些方法可以调整模型的复杂度,提高模型的泛化能力。1、欠拟合(Und......
  • 【Python】强化学习Q-Learning走迷宫
    Q-Learning是一种基于值函数的强化学习算法,这里用该算法解决走迷宫问题。算法步骤如下:1.初始化Q表:每个表格对应状态动作的Q值。这里就是一个H*W*4的表,4代表上下左右四个动作。2.选择动作:根据Q表格选择最优动作或者以一定概率随机选择动作。3.执行动作,得到返回奖励(这......
  • Python:处理大数据量文件心得
    --javascripttypescriptbashsqljsonhtmlcssccppjavarubypythongorustmarkdown完成大文件按规则拆解。使用python实现将5个多g,总共五千万行数据的csv文件进行按照某个特殊时属性进行拆解。问题难点:文件过大,服务器内存资源不足,需要分块读入内存并处理。之前想着......
  • python基础学习6-第三方模块
    自定义模块优先级大于系统模块模块分为系统模块,自定义模块,第三方模块导入方式import模块名称[as别名]from模块名称import变量/函数/类*包的导入import包名.模块名as别名form包名import模块名as别名form包名.模块名import函数/变量/类*主程序运行i......