flask+gevent的异步框架
一:flask本身的框架时什么?
基于Wsgi的Web应用框架
二:为什么要实现异步架构?
增加并发处理能力
三:实现异步架构
from gevent import monkey from gevent.pywsgi import WSGIServer from geventwebsocket.handler import WebSocketHandler
monkey.patch_all()
from flask import Flask app = Flask(__name__) @app.route("/") def index(): pass if __name__ == "__main__": http_server = WSGIServer(("0.0.0.0", 12002), app,handler_class=WebSocketHandler) try: http_server.serve_forever() except KeyboardInterrupt: print("server has been stoped")
注意:为实现 Flask 与 gevent 的结合,需在程序开头引入 monkey patch。monkey patch 将以闭包的形式修改可以实现异步的标准库,从而实现异步。
注意:需使用支持 gevent 的 WSGI,例如:gevent.pywsgi、gunicorn 等
四:什么是wsgi?
Web服务器网关接口(Python Web Server Gateway Interface,缩写为WSGI)是为Python语言定义的Web服务器和Web应用程序或框架之间的一种简单而通用的接口
五:什么是uwsgi?
uwsgi是一种通信协议,不过跟WSGI分属两种东西,该协议下速度比较快。
六:什么是uWSGI?
uWSGI是一个Web Server,并且独占uwsgi协议,但是同时支持WSGI协议、HTTP协议等,它的功能是把HTTP协议转化成语言支持的网络协议供python使用。
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步