FastAPI接口性能从1200ms到80ms:Profiling与缓存优化实录
一个内部报表接口在QPS达到50时平均延迟飙升至1200ms,P99直接超过2秒,数据库连接池被打满,CPU居高不下。本文将完整记录我使用Py-Spy、SlowQueryLog定位瓶颈,通过索引优化、Redis缓存和异步改造三步,将接口延迟降至80ms、P95稳定在150ms以内的全过程。文中涉及FastAPI 0.104、SQLAlchemy 2.0、Py-Spy 0.3.14、Redis 7.

Coder,长期记录真实项目中的技术选择,技术方向以软件工程为主。持续整理项目复盘、问题排查与调试和可复用的工程方法;重视可维护性、稳定性与协作效率。
一个内部报表接口在QPS达到50时平均延迟飙升至1200ms,P99直接超过2秒,数据库连接池被打满,CPU居高不下。本文将完整记录我使用Py-Spy、SlowQueryLog定位瓶颈,通过索引优化、Redis缓存和异步改造三步,将接口延迟降至80ms、P95稳定在150ms以内的全过程。文中涉及FastAPI 0.104、SQLAlchemy 2.0、Py-Spy 0.3.14、Redis 7.
本文记录了一次完整的7B模型微调实践,使用LoRA和QLoRA技术对Qwen2.5-7B-Instruct进行领域适配。在单张RTX 3090(24G显存)环境下,通过QLoRA将训练显存峰值控制在9.8G,微调后模型在医疗问答数据集上的ROUGE-L从0.21提升至0.47。同时对比了LoRA与QLoRA在训练速度、显存占用、推理效果上的差异,并给出了训练过程中遇到的3个典型坑及解决方案。
在高并发实时推荐业务中,向量数据库选型直接决定服务成本与响应速度。本文基于美团到店业务某推荐场景,使用同一份2500万条768维向量数据,分别对Milvus 2.4.1(CAGRA索引)和Qdrant 1.9.0(HNSW)进行完整对比。实测得出:在16C32G单机配置下,Qdrant内存占用比Milvus低37%,但Milvus在4并发下P99延迟低至12ms,且支持GPU加速。文章包含从Doc