未经许可请勿转载。
Please do not reprint this article without permission.
众所周知,Python Web开发常用的三大框架是Django、Flask和Tornado。笔者在面试过程中也被常问到这几个框架的特点和区别,具体可参考Python Web 框架:Django、Flask 与 Tornado 的性能对比等等。本文对此不会作深入讨论,而是要介绍一款据说性能更高、更适用于高并发场景的框架——FastAPI。笔者在面试过程中接触到了这个框架,并马上搜索了相关的文档,发现介绍其原理的中文文章并不多,因此借着为秋招复习这个机会,探究一下FastAPI究竟为什么这么快。
什么是FastAPI?
FastAPI是一款现代化、高性能的Web框架,用于构建基于Python3.6及以上的API,其具有以下特征:
速度快:非常高的性能,与NodeJS和Go不相上下,是最快的Python框架之一;
编码快:将开发特性所需的速度提高大约200%到300%;
错误少:减少大约40%的人为(开发)错误;
直观:强大的编辑器支持,支持多场景开发,调试所花的时间更少;
简单:被设计为易于使用和学习,减少阅读文档的时间;
代码少:最小化重复,更少的错误;
健壮:代码可随时部署到生产环境,并自动提供交互文档;
标准:基于(并完全兼容)api的开放标准:OpenAPI(以前称为Swa