来源:juejin.cn/post/
如果说要用Python进行web开发,我想你一定会告诉我使用Flask或者Django再或者tornado,用来用去无非就这三种框架。可能逛github多的朋友还会说一个fastapi。但是,皇上,时代变了,大清…亡了!!!
速度为先当下,python都已经更新到了Python3.9.3了,如果你还没有使用过asyncio、和Python3.5新增的async/await语法,那说明你可能真的是桃花源人,问今是何世,不知有汉,无论魏晋了。
在当下,基于async/await语法的异步Web框架也有很多,在github上找一找比比皆是是,那究竟应该选哪一款呢?在github上有一个专门测试各种语言各种Web框架速度的项目,我们来看一看简单的数据:
这是所有的PythonWeb框架速度测试,有人可能会问为什么不是从1开始排序的,因为这个项目的测试还包含golang、java、php等众多语言的Web框架,共有款。这里我们只用Python来做对比。
可以明显的看到,flask、django、tornado等老牌的PythonWeb框架已经快要垫底了。
wow,这个速度绝了。可能你们还在怀疑这个速度如何测试的,给你们看一下测试源码:
#Disableallloggingfeaturesimportlogginglogging.disable()fromflaskimportFlaskfrommeinheldimportpatchpatch.patch_all()app=Flask(__name__)
app.route("/")defindex():return""app.route("/user/int:id",methods=["GET"])defuser_info(id):returnstr(id)app.route("/user",methods=["POST"])defuser():return""fromdjango.