FastAPI 是一个用 Python 3.6+ 构建 API 的现代高性能框架,基于 Starlette 和 Pydantic,拥有极快的速度,性能可与 NodeJS 和 Go 相媲美,是 Python 中最快的框架之一。
快速开发:比传统框架快 200% 到 300%。
减少错误:降低约 40% 的人为错误。
直观易用:强大的编辑器支持,自动补全,减少调试时间。
简洁高效:减少代码重复,每个参数声明包含多个特性。
健壮可靠:生成可用于生产的代码,附带自动交互式网页。
安装 FastAPI 非常简单,只需使用 pip:
pip install fastapi
为了运行 FastAPI 应用,你需要一个 ASGI 服务器,比如 Uvicorn 或 Hypercorn:
pip install uvicorn
创建一个简单的 FastAPI 应用:
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def read_root():
return {"message": "Hello World"}
运行应用:
uvicorn main:app --reload
访问 http://127.0.0.1:8000/docs
可以查看自动生成的交互式 API 网页。
FastAPI 提供多种性能优化方法,包括:
异步处理:利用 async/await 语法处理高并发请求。
参数解析优化:使用 Pydantic 模型进行高效数据验证和转换。
惰性加载:延迟初始化重资源组件,提高响应速度。
FastAPI 支持多种安全机制,如 OAuth2 和 JWT。