跳转到: 导航, 搜索

Web-frameworks-comparison

此表格比较了 Python 社区中可用的 Web 框架。我们认为一些框架可以忽略,例如 Django、Sanic、Tornado,因为它们与我们的用例(服务路由)有些不相关,但我们列出了它们以便对我们的生态系统有一个全面的了解。

您可以在相关的 etherpad 中添加您的优点和缺点 https://etherpad.opendev.org/p/eventlet-removal-web-frameworks-comparison

关于 SGI 服务器的比较,请参见这里 https://wiki.openstack.org/wiki/SGI-servers-comparison

HTTP 库(客户端库)的比较正在这里进行 https://wiki.openstack.org/wiki/Http-libraries-comparison

框架 性能 易用性 特性 异步性 可扩展性 社区和生态系统 安全 可扩展性 SQLAlchemy 支持 维护活跃度 备注
FastAPI 中等 中等 Yes 增长中 中等 Yes 非常活跃 FastAPI 是现代异步 API 的绝佳选择。性能很高,非常适合可扩展性。
Flask 中等 庞大 中等 中等 Yes 非常活跃 Flask 的简单性和庞大的生态系统使其成为小型到中型应用程序的理想选择。
Pyramid 中等 中等 中等 可选 Yes 活跃 Pyramid 提供了从小处着手并根据需要扩展的灵活性,非常适合模块化应用程序。
Bottle 非常低 小型 Yes 适度活跃 最适合非常小的应用程序或微服务,缺乏开箱即用的功能。
CherryPy 中等 中等 小型 中等 中等 Yes CherryPy 极简且轻量级,但缺乏现代功能,例如异步支持。
Routes 中等 小型 Yes Routes 专注于 Web 应用程序的路由,提供 URL 分派,但缺乏更多综合框架中的许多其他功能。
Django 中等 中等 非常高 中等 非常庞大 非常高 非常活跃 功能齐全的框架,但缺乏原生异步支持。可以使用 SQLAlchemy,但 Django ORM 是默认选项。
Sanic 非常高 中等 Yes 增长中 Yes 活跃 非常适合具有异步需求的高性能应用程序,但与其他框架相比,生态系统较小。
Tornado 中等 中等 Yes 中等 小型 中等 Yes 中等 Tornado 专为实时 Web 应用程序设计,并支持长时间的网络连接。