Starlette
Starlette是一个轻量级的Python Web框架,基于ASGI(异步服务器网关接口)规范构建,专为构建高性能异步Web应用和API服务而设计。它提供路由、中间件、WebSocket支持、后台任务及请求/响应处理等核心功能,代码简洁、易于扩展。Starlette同时也作为FastAPI等高层框架的底层基础组件被广泛使用。
核心事实
时间轴 (近 90 天)
FastAPI 底层运行在 Starlette(ASGI 框架)与 Uvicorn(ASGI 服务器)之上,其高并发能力来自异步 I/O 模型。
FastAPI 基于 Starlette 处理 Web 底层(路由、中间件、异步支持),并基于 Pydantic 进行数据校验与序列化。
WSGI(Web Server Gateway Interface,PEP 3333)是同步标准,Django 和 Flask 默认基于它构建;ASGI 是异步演进版,支持 async/await、WebSocket 和长连接,FastAPI 和 Starlette 采用它。
Starlette 是一个轻量级的 Python 异步 Web 框架/工具包,由 Tom Christie 开发,构建于 ASGI 标准之上
HTTPX由Encode团队开发,该团队同时维护Starlette和Uvicorn
全部知识事实 (9)
FastAPI基于Starlette和Pydantic构建,天然支持异步处理,基于ASGI(Asynchronous Server Gateway Interface)
80%已验证FastAPI底层基于Starlette框架
80%已验证Starlette 是一个轻量级的 Python 异步 Web 框架/工具包,由 Tom Christie 开发,构建于 ASGI 标准之上
65%待验证Starlette由Tom Christie创建,Tom Christie同时也是Django REST Framework的作者
60%待验证FastAPI 底层运行在 Starlette(ASGI 框架)与 Uvicorn(ASGI 服务器)之上,其高并发能力来自异步 I/O 模型。
50%待验证FastAPI 基于 Starlette 处理 Web 底层(路由、中间件、异步支持),并基于 Pydantic 进行数据校验与序列化。
50%待验证WSGI(Web Server Gateway Interface,PEP 3333)是同步标准,Django 和 Flask 默认基于它构建;ASGI 是异步演进版,支持 async/await、WebSocket 和长连接,FastAPI 和 Starlette 采用它。
50%待验证HTTPX由Encode团队开发,该团队同时维护Starlette和Uvicorn
50%待验证FastAPI 在 Starlette 之上增加了基于 Pydantic 的类型注解驱动参数验证和自动文档生成能力
50%