用过 Django、Flask、Tornado、Quart、FastAPI,其中 Tornado、Quart 是用在企业级爬虫 API 项目中的,Django 写过几个小的管理系统。
直观感受是 Flask 的一些设计影响还是挺深远的,好几个框架都有些 Flask 的影子,然后 FastAPI 是直接把 Flask 的一些方便的特性强化到了极致。
但是实际上用啥写都差不多,性能上没有感受到 [特别大] 的差别,主要的差别还是在于每个框架特有的一些方便的设计。
建议写管理系统、简单的前后端不分离的网站用 Django,写 API 用 FastAPI,都是在设计上特化了某一个方向的框架,在写对应的东西时你的感觉只有一个“爽”😂。
然后 Flask 和 Tornado 的源码也可以看看,里面的代码结构设计、处理方式、工具函数都很值得花时间了解一下。
Airbnb 用 flask 比较多,Superset 和 Airflow 都是 flask,优点就是比较灵活,做工具的话很不错。