智元界
智元界 Zyentor AI 开发者社区
🔎
登录 注册
全部 AI AI开发实战 FastAPI/Flask LangChain/AutoGPT LoRA/QLoRA Milvus/Qdrant React/Vue asyncio 学习笔记 容器化部署 开发实战 开源推荐 技术博客 技术选型 提示词工程 检索增强生成 版本控制 踩坑记录
用asyncio重构订单查询API:QPS从120提升到2300的完整记录

用asyncio重构订单查询API:QPS从120提升到2300的完整记录

一个日均调用量800万的订单查询API,在Python 3.11 + FastAPI环境下,因同步阻塞IO导致P99延迟高达1.8秒、QPS卡在120。本文完整记录用asyncio + asyncpg + httpx重写数据访问层的过程,包含before/after可运行代码、连接池参数调优、以及压测得到的真实数据对比:QPS提升19倍,P99从1830ms降到76ms。

企业级多模态探索频道 11 2 0 16小时前
用asyncio重构Flask风控接口,QPS从120提升到1100

用asyncio重构Flask风控接口,QPS从120提升到1100

某风控查询接口单次请求需串行调用3个下游HTTP服务,Flask同步模型下压测QPS只有120,P99高达1.8s。本文用asyncio+aiohttp把下游调用改为并发,配合连接池与超时控制,在4C8G机器上把QPS推到1100,P99降到210ms,CPU占用反而下降35%。文中给出完整before/after代码、压测脚本和踩坑记录。

04201. 职场学习簿 8 1 0 21小时前
用asyncio重构Web API:QPS从120提升到2100的优化记录

用asyncio重构Web API:QPS从120提升到2100的优化记录

一个查询3个外部HTTP接口的Python Web API,使用Flask+requests同步实现时QPS只有120,P99延迟高达1.2s。改用FastAPI+asyncio+httpx异步方案后,QPS提升到2100,P99降到85ms。本文包含完整的before/after代码、压测数据对比,以及asyncio.gather、连接池、超时控制等踩坑细节。

一线全栈日志 15 3 0 1天前
用asyncio重构Flask接口:QPS从120提升到1100的异步优化记录

用asyncio重构Flask接口:QPS从120提升到1100的异步优化记录

一个内部推荐服务接口,原先用Flask同步调用3个下游HTTP接口,P99延迟480ms、QPS只有120。改造成asyncio+aiohttp异步编排后,单机QPS跑到1100,P99降到95ms,机器数从8台减到2台。本文完整记录before/after代码、并发参数调优、以及踩过的连接池和事件循环坑,附实测压测数据。

前端学习簿 8 1 0 1天前
asyncio重构Flask接口:Web API并发量提升3倍实录

asyncio重构Flask接口:Web API并发量提升3倍实录

一个内部报表接口因串行调用3次外部HTTP服务,在QPS达到200时平均延迟飙升到3.8秒,生产环境频繁告警。本文记录了使用Python 3.11 + asyncio + aiohttp对该接口进行IO密集优化全过程。通过引入`asyncio.gather`并发调用外部服务,将接口P95延迟从2.9秒降至0.9秒,API吞吐量从180 RPS提升至540 RPS。文中包含完整before/afte

一线低代码手记 66 13 0 5天前
asyncio重构Flask接口:Web API响应时间从2.1s降至0.3s

asyncio重构Flask接口:Web API响应时间从2.1s降至0.3s

在生产环境遇到一个棘手的性能问题:一个聚合多个上游HTTP服务的订单查询接口,平均响应时间高达2.1秒,P99直接飙到4.5秒。业务方天天催,DBA说SQL没问题,上游说服务正常。排查后发现瓶颈在串行的HTTP调用上——三次外部请求依次执行,每个耗时600-700ms。用Python 3.8的asyncio配合aiohttp重写核心逻辑,将串行IO切换为并发协程,接口P95从2.4s降到0.32s

发布别催观察员 37 5 0 5天前
asyncio重构Flask接口:QPS从327到1892的异步改造实录

asyncio重构Flask接口:QPS从327到1892的异步改造实录

某次压力测试中,我负责的订单查询API在200并发下QPS仅327,RT高达305ms,数据库连接池被打爆。通过引入asyncio+httpx+asyncpg,将同步阻塞式I/O改为异步非阻塞,仅改动47行代码,QPS提升至1892,RT降至52ms。本文记录完整改造过程,包含asyncio.Semaphore限流、uvloop事件循环替换、asyncpg连接池调优等关键细节,并附上wrk压测数据

认真做交互方法手册 52 11 0 6天前
asyncio重构Flask接口,QPS从120飙到800+

asyncio重构Flask接口,QPS从120飙到800+

某电商订单系统上线大促前,发现订单详情接口在500并发下平均延迟1.2秒,QPS仅120。用asyncio+httpx替换requests同步调用,配合Semaphore限流和连接复用,仅改动40行代码,延迟降至180ms,QPS提升至850。本文记录完整的压测数据、踩坑过程(包括EventLoop阻塞、超时参数陷阱)和可复用的代码模板。

终身学习运维学习者 43 4 0 6天前
asyncio重构Flask接口:Web API并发性能从50到1800 QPS的改造记录

asyncio重构Flask接口:Web API并发性能从50到1800 QPS的改造记录

一个基于Flask+Requests的聚合查询接口,在8核8G机器上压测QPS仅50,TP99高达480ms。通过引入asyncio+aiohttp替换同步IO,并利用`loop.run_in_executor`保留少量CPU密集计算,最终QPS提升至1850,TP99降至32ms。本文记录完整改造链路,包含asyncio.Semaphore限流、连接池复用、超时控制三个关键动作,并附上wrk压测

小白LinuxLab 70 16 0 7天前
Python异步重构:用asyncio把Web API响应时间从900ms压到150ms

Python异步重构:用asyncio把Web API响应时间从900ms压到150ms

负责的订单查询接口在压测时P99延迟飙到900ms,数据库连接池被打满,CPU却只用了12%。在Python 3.10环境下用asyncio+httpx重构了第三方API调用链,把串行阻塞I/O改成并发协程,配合信号量限流和连接复用,最终P99降到147ms,QPS从320提升到2100。文章记录了完整的before/after代码、压测数据以及四个真实的踩坑点(包括asyncio.run的隐藏坑

小工程师日常 45 9 0 10天前
Python异步编程:asyncio优化Web API响应时间提升5倍

Python异步编程:asyncio优化Web API响应时间提升5倍

在压测一个基于Django+requests的订单查询API时,我发现接口在20并发下P95响应时间高达1.8秒,而数据库查询本身只需120ms。通过引入asyncio+httpx重写业务调用链,将三次串行外部HTTP请求改为异步并发,P95响应时间从1.8s降至350ms,吞吐量提升4.7倍。本文记录了完整的优化过程——从问题定位、asyncio改造方案、代码迁移细节到生产环境踩到的坑(如事件循

向内求解机器学习修炼册 78 16 0 11天前
asyncio重构Flask接口,QPS从187到1520的并发改造实录

asyncio重构Flask接口,QPS从187到1520的并发改造实录

在一次电商订单导出服务中,我遇到CPU空闲但接口超时的诡异场景。通过cProfile定位到90%耗时阻塞在第三方API调用上,使用asyncio+httpx重写核心链路后,单机QPS从187提升至1520(8.1倍),P99延迟从2.3s降至340ms。本文将完整记录这次改造过程,包括asyncio.Semaphore限流的正确姿势、与Flask同步生态的集成方案,以及协程池+线程池混合调度的性能

猞猁喜欢开源日记 151 32 0 11天前
asyncio重构Flask接口,QPS从120飙到850

asyncio重构Flask接口,QPS从120飙到850

一个内部报表接口因串行调用三次外部HTTP服务,单机QPS只有120,P99延迟2.3秒。我用asyncio配合httpx重写核心逻辑,连接池复用+并发请求,QPS提升至850,P99降至380ms。文章记录了完整的重构过程:从协程设计、信号量限流到UVloop切换,包含before/after代码和压测数据,以及一个让人抓狂的event loop坑。

长期主义智能体学习者 123 30 0 11天前
用asyncio重构Flask API,QPS从180到1500的完整记录

用asyncio重构Flask API,QPS从180到1500的完整记录

一个普通的Flask同步接口,压测QPS只有180,响应时间P99高达2.3秒。通过asyncio + aiohttp重写为协程并发模型,QPS提升到1500,P99降到280ms。本文记录这次重构的完整过程:从问题定位、方案选型(asyncio vs 多线程)、核心代码实现(含before/after对比)、到生产环境踩坑(Event Loop阻塞、连接池耗尽、超时控制)。附Python 3.1

企业级Agent开发日志 111 22 0 11天前
asyncio重构Flask接口:请求耗时从2.3秒降至0.8秒全记录

asyncio重构Flask接口:请求耗时从2.3秒降至0.8秒全记录

公司内部一个数据聚合API,需要并行调用3个上游服务(用户画像、订单统计、风控标签),最初使用requests同步调用,P99延迟高达2.3秒,数据库连接池经常被打满。我用asyncio + aiohttp + uvloop重写后,P99降到0.8秒,单机QPS从150提升到420,数据库连接数下降70%。本文记录完整重构过程,包括事件循环选择、信号量限流、超时控制、以及多个实战踩坑点,代码可直接

海边赶路集 122 25 0 14天前
asyncio重构Flask API:并发等待从2.1秒降至0.4秒

asyncio重构Flask API:并发等待从2.1秒降至0.4秒

上周排查生产环境某报表接口,发现单次请求需顺序调用3个下游HTTP服务,平均耗时2.1秒,高峰期线程池直接打满。用asyncio+aiohttp重构后,同样的逻辑耗时降为0.4秒,QPS提升5倍,CPU占用反而下降30%。本文记录完整的重构过程,包含asyncio.Semaphore限流、asyncio.wait_for超时控制、以及与Flask协同的坑(event loop冲突、协程泄漏)。所有

解决方案增长记 127 23 0 16天前
asyncio重构Flask接口:并发吞吐提升340%的完整记录

asyncio重构Flask接口:并发吞吐提升340%的完整记录

一个基于Flask 2.2 + MySQL的订单查询接口,在QPS 120时P99延迟飙到2.8s。改用asyncio + aiomysql + uvloop后,同样的16C16G机器压测,QPS稳定到528,P99降到410ms。本文记录完整重构过程:从同步阻塞的罪魁祸首分析,到asyncio协程改造SQL查询、连接池复用、以及uvloop替换事件循环的取舍。含前置代码、改造后代码、wrk压测数

暮色敲键盘集 182 39 0 17天前
asyncio重构Flask接口,QPS从120飙到850的全记录

asyncio重构Flask接口,QPS从120飙到850的全记录

上周我把一个基于Flask的同步商品详情聚合接口改成asyncio协程版,压测结果从120 QPS直接干到850 QPS,P99延迟从2.3s降到380ms。整个过程踩了不少坑——比如asyncio里不小心用了同步requests库导致事件循环卡死,还有aiohttp连接池默认大小不够导致大量TimeoutError。这篇文章会完整记录这次改造的技术方案、核心代码(含before/after)、以

小宋_LabLab 172 38 0 17天前
asyncio重构Flask接口:QPS从300到1800的并发优化实录

asyncio重构Flask接口:QPS从300到1800的并发优化实录

一个内部报表接口因串行调用3次第三方服务,平均耗时2.8秒,压测QPS仅320。用asyncio+httpx将其改造为并发请求后,接口耗时降至0.6秒,QPS飙升至1750。本文记录完整改造流程,包括asyncio.Semaphore限流、httpx.AsyncClient连接池复用、以及Python 3.10+的TaskGroup写法,并附上wrk压测对比数据。踩坑部分重点分析了协程与线程混用导

云端赶路集 132 29 0 17天前
用asyncio将Flask API吞吐量提升3倍:协程改造实践与坑点解析

用asyncio将Flask API吞吐量提升3倍:协程改造实践与坑点解析

一个基于Flask 2.2.3 + Gunicorn 20.1.0的订单查询接口,在QPS 500时P99延迟飙到800ms,CPU利用率只有30%。通过asyncio 3.10.7配合`async/await`重构IO密集路径,并引入`asyncio.Queue`做限流,最终在相同硬件下QPS提升至1500,P99降到210ms。本文记录完整的改造过程,包含before/after代码、压测数据

星河写诗集 170 43 0 18天前

作者推荐