用asyncio重构Flask API,QPS提升280%的完整记录
面对一个基于Flask 2.2.5 + Gunicorn的Web服务,在压测中发现其QPS仅为320,且CPU利用率不足40%。通过引入asyncio 3.11.4将阻塞式IO调用改为异步协程,并配合uvloop 0.19.0,最终将QPS提升至1210,P99延迟从890ms降至210ms。本文记录了一次真实的重构过程,包括代码改造、线程池调优、连接池复用等细节,以及过程中遇到的坑(如async

一边拒绝无效加班,一边提升工程效率。主要研究软件工程与问题排查,记录开发效率提升、代码可维护性以及那些看似简单却很容易踩坑的问题。所有结论都尽量来自亲自验证和项目复盘。
面对一个基于Flask 2.2.5 + Gunicorn的Web服务,在压测中发现其QPS仅为320,且CPU利用率不足40%。通过引入asyncio 3.11.4将阻塞式IO调用改为异步协程,并配合uvloop 0.19.0,最终将QPS提升至1210,P99延迟从890ms降至210ms。本文记录了一次真实的重构过程,包括代码改造、线程池调优、连接池复用等细节,以及过程中遇到的坑(如async
本文以“电商评论情感分类”为具体任务,对比了零样本、少样本、思维链、结构化约束和角色扮演五种Prompt策略。实验基于GPT-4o(2025-05-13快照)和gpt-3.5-turbo-0125,共消耗约18万token,花费约$4.2。通过五轮迭代,我最终将分类F1值从0.62提升至0.91,同时把单次推理token开销从420压缩到280。文章不聊玄学,只贴代码和真实数字,包括每个Promp