Flask+gevent 实现异步请求处理

Flask+gevent 实现异步请求处理

使用flask+gevent实现异步请求处理,首先gevent库要使用猴子布丁,使底层I/O支持异步处理。

1 使用猴子补丁

python 复制代码
from gevent import monkey
monkey.patch_all()

使用猴子补丁后, 内建函数time.sleep()已经魔改成gevent.sleep(), 这两个函数的效果是一样的。

2 相同的url请求无法实现异步处理

例如同时发出的两个请求,url相同是不可能实现异步处理的。

req1: /api/v2.1/test

req2: /api/v2.1/test

url不同的情况, 如下

req1: /api/v2.1/test

req2: /api/v2.1/test?s=1

req1: /api/v2.1/test

req2: /api/v2.1/test2

有可能实现网络请求的异步处理。

3 url请求处理中包含异步函数

在url请求的处理代码中包含异步函数。 例如

python 复制代码
time.sleep(0.1)

gevent.sleep(0.2)
相关推荐
郑洁文10 小时前
基于Python的网络入侵检测系统
网络·python·php
AIMath~10 小时前
python中的uv命令揭秘
开发语言·python·uv
弹简特10 小时前
【零基础学Python】06-Python模块和包、异常处理、文件常用操作
开发语言·python
念恒1230610 小时前
Python 面向对象编程核心:对象、实例化、封装与变量作用域
开发语言·python
雪隐10 小时前
个人电脑玩AI00-前言
人工智能·后端
薛定谔的悦10 小时前
光伏-储能-负荷联合预测:给 EMS 装上“预知能力“
java·数据库·人工智能·python·储能
我是一颗柠檬10 小时前
【Java后端技术亮点】动态路由权限(按钮级权限),细粒度控制到按钮级别
java·开发语言·后端·状态模式
前端Hardy10 小时前
CSS 动画真的比 JS 快?Josh Comeau 做了组实验,结果跟直觉不一样
前端·javascript·后端
Front思10 小时前
调取支付宝支付正式环境不可以唤起来,但是沙箱可以
后端
foggyprojects11 小时前
AI 生成 SQL 模板以后,为什么还需要固定 helper 规则
后端