前言

大家好,我是曦远~

前段时间我写过一篇文章 《Django过时了吗?从ASGI到AI时代的思考》,聊到在 AI 时代下,传统全家桶式框架(比如 Django)该如何面对新趋势。

最近在翻新 DjangoStarter 项目的时候,我顺便做了一些调研,发现 Python Web 生态的变化比我想象得还要快。

一方面,老牌选手 Django 也有了像 Ninja 这样的新鲜外挂;另一方面,如果不走 Django 全家桶路线,还有一批正在崛起的轻量级框架和工具,把 Python Web 推向了一个新的阶段:轻量化 + 异步优先 + Rust 加持

所以这篇文章,我就来聊聊 2025 年值得关注的几个新选择:LiteStar、Tortoise ORM、Granian 和 Robyn

LiteStar

LiteStar 是一个基于 ASGI 的新兴框架,定位有点像 FastAPI 的进化版。

  • 优点:类型提示完整、依赖注入自然、性能不错。
  • 缺点:脱离 Django 生态后,ORM/后台管理都要自己选配。
  • 适合人群:独立开发者、小型项目,追求轻量 + 灵活。

我在试用的时候,最大的感觉是:写法清爽,没有 Django 那么多历史包袱。

后续我会拿 LiteStar 来开发一个正式的项目试试水。

到时再来分享一波。

异步 ORM

脱离了 Django 生态,最不习惯的应该就是 ORM。

LiteStar 没有内置 ORM,那选谁?我个人推荐 Tortoise ORM

这玩意写法和 Django ORM 非常像

class Event(Model):
id = fields.IntField(pk=True)
name = fields.CharField(max_length=255)
start_time = fields.DatetimeField()

是不是有点眼熟?

对 Django 用户来说学习成本很低。

  • 优点:异步原生,写法和 Django ORM 一致。
  • 缺点:生态规模不如 Django ORM,社区活跃度有待观察。

如果习惯了 Django ORM,但又想要 async/await,Tortoise ORM 是个不错的选择。

Granian

Rust 驱动的高性能服务器

部署层面,我最近发现一个新玩意:Granian

  • 用 Rust 写的 ASGI 服务器,比 Uvicorn/Daphne 更快。
  • 可以直接处理静态文件,很多场景下连 Nginx 都不用。
  • 内置多 worker,部署流程更简单。

换句话说:一次性代替 Daphne + Nginx

我准备在 DjangoStarter 的后续实验里用 Granian 来跑,看看能不能省下一层反向代理。毕竟最近正头疼 DjangoStarter 的 Nginx 配置要如何优雅整合 URL Prefix 功能呢

Robyn

Python 写法 + Rust 性能

另一个值得关注的是 Robyn。它的思路是:用 Rust 写底层 runtime,用 Python 提供 API 层。

这样既有 Python 的易用性,又能跑到接近 Node.js/Rust 框架的性能。

  • 内置路由、静态文件、模板
  • 高性能异步 runtime
  • 对开发者友好,写法接近 Flask/FastAPI

看起来是个很酷的框架,把 Python 的易用性 + Rust 的性能结合起来,一言以蔽之就是「生产力与速度兼顾」,感觉也可以玩一玩

小结

2025 的 Python Web 生态,已经不只是 Django vs Flask vs FastAPI。

新的趋势是:

  • 框架更轻量(LiteStar)
  • ORM 原生异步(Tortoise)
  • 部署层更快更简单(Granian)
  • Rust 加持性能(Robyn)

我的感受是:Django 依然重要,但新框架给独立开发者和小团队带来了更多可能性

未来我会在实际项目里试试 Robyn 和 Granian,看看能不能让 Python 写法 + Rust 性能落地。

2025年了,在 Django 之外,Python Web 框架还能怎么选?的更多相关文章

  1. python三大web框架Django,Flask,Flask,Python几种主流框架,13个Python web框架比较,2018年Python web五大主流框架

    Python几种主流框架 从GitHub中整理出的15个最受欢迎的Python开源框架.这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试,爬虫等. Django: Python We ...

  2. Django,Flask,Tornado三大框架对比,Python几种主流框架,13个Python web框架比较,2018年Python web五大主流框架

    Django 与 Tornado 各自的优缺点Django优点: 大和全(重量级框架)自带orm,template,view 需要的功能也可以去找第三方的app注重高效开发全自动化的管理后台(只需要使 ...

  3. python web框架——扩展Django&tornado

    一 Django自定义分页 目的:自定义分页功能,并把它写成模块(注意其中涉及到的python基础知识) models.py文件 # Create your models here. class Us ...

  4. 浅谈Python Web 框架:Django, Twisted, Tornado, Flask, Cyclone 和 Pyramid

    Django Django 是一个高级的 Python Web 框架,支持快速开发,简洁.实用的设计.如果你正在建一个和电子商务网站相似的应用,那你应该选择用 Django 框架.它能使你快速完成工作 ...

  5. python web框架介绍对比

    Django Python框架虽然说是百花齐放,但仍然有那么一家是最大的,它就是Django.要说Django是Python框架里最好的,有人同意也有人 坚决反对,但说Django的文档最完善.市场占 ...

  6. python web框架简介Bottle Flask Tornado

    Bottle Bottle是一个快速.简洁.轻量级的基于WSIG的微型Web框架,此框架只由一个 .py 文件,除了Python的标准库外,其不依赖任何其他模块. ? 1 2 3 4 pip inst ...

  7. python web框架(bottle,flask,tornado)

    Python的WEB框架 Bottle Bottle是一个快速.简洁.轻量级的基于WSIG的微型Web框架,此框架只由一个 .py 文件,除了Python的标准库外,其不依赖任何其他模块. pip i ...

  8. 一文读懂Python web框架和web服务器之间的关系

    我们都知道 Python 作为一门强大的语言,能够适应快速原型和较大项目的制作,因此被广泛用于 web 应用程序的开发中. 在面试的过程中,大家或多或少都被问到过这样一个问题:一个请求从浏览器发出到数 ...

  9. 2018年要学习的10大Python Web框架

    通过为开发人员提供应用程序开发结构,框架使开发人员的生活更轻松.他们自动执行通用解决方案,缩短开发时间,并允许开发人员更多地关注应用程序逻辑而不是常规元素. 在本文中,我们分享了我们自己的前十大Pyt ...

  10. python web框架——初识tornado

    一 Tornado概述 Tornado是FriendFeed使用的可扩展的非阻塞式web框架及其相关工具的开源版本.这个Web框架看起来有些像web.py或者Google的 webapp,不过为了能有 ...

随机推荐

  1. 2023 syzx 春季训练 1

    得找个时间把 zr 题补补.. A 考虑 \(f_{i}\) 只能拆为 \(f_{i-1}+f_{i-2}\),考虑拆 \(f_{i-1}=f_{i-2}+f_{i-3}\) 时,这条 \(f_{i- ...

  2. 学习spring cloud记录7-nacos服务分级存储模型

    前言 添加集群,级别分别为服务--集群--实例. 配置集群 可在配置文件中添加以下配置设置该服务的集群 cloud: nacos: server-addr: localhost:8848 # naco ...

  3. Power BI: 设置切片器只能影响到指定的图表

    如下所示: 表一和表二的数据都来源于Staff表,切片器也来源于Staff表,但是希望当切片器的值发生变化时,只会影响到表二,表一永远显示所有的数据,不受切片器的影响. 做法如下: 选中切片器,菜单栏 ...

  4. java 中的equals hashCode

    简介 hashCode 与 equals 应该有等同性,如果A equals B 那么 A 和 B 的hashCode 应该一样 还有toString方法可以在后期调试的过程中起到很好的作用 code ...

  5. 【Container App】创建Container App后发现Application URL不完整

    问题描述 新创建了一个Container App服务,构建在内部访问的环境中( Container App Environment配置了虚拟网络并设置为内部访问). ##Container Apps ...

  6. SciTech-Mathmatics-Physics-Particle Physics-Election+Photon+Quantum: Parallel Universe + Superposition + Wave-Particle Duality.

    SciTech-Mathmatics-Quantum LaTex: https://tex.stackexchange.com/questions/483996/automatically-sized ...

  7. Win10远程桌面出现“身份验证错误,CredSSP加密Oracle修正”解决方法 --九五小庞

    Windows10更新1803后,远程桌面就会连接失败,显示如下: error.jpg 这就比较尴尬了. 根据微软官方的说法是更改了安全策略 https://support.microsoft.com ...

  8. 大神U盘工具win10 pe uefi纯净版制作方法详解

    现如今很多电脑都是使用uefi启动方式的了,今天MSDN123为各位看官推荐一款大神uefi启动u盘工具的制作方法.希望可以给有需要的小伙伴提供到帮助.方法如下:1.下载大神U盘工具UEFI版并安装至 ...

  9. chatgpt 集成飞书实践指南

    开个境外服务器 目前OpenAI的API已向161个国家和地区开放,在亚洲范围内,日本.韩国.缅甸.印度.尼泊尔.巴基斯坦均在开放之列.openai对国内网络(包括香港)似乎都有屏蔽,刚好公司就有国际 ...

  10. WEBAPI HTTP请求中所有的参数去除空格

    WEBAPI HTTP请求中所有的参数去除空格 反正总会有一些沙雕需求. 总体思路就是要么中间件要么aop,拦截请求,对请求的参数做处理. 不知道大佬们有没有什么其他的思路来做,或者有更优的代码. 效 ...