性能是Flask的3倍!比PHP7还快!这个Python框架你值得拥有!(附使用教程)

FastAPI是一个高性能的Python异步Web框架,比Flask快3倍,甚至接近PHP7的速度。它具有并发性能强、易上手、自动生成交互式文档等特点。本文介绍了FastAPI的性能测试、安装、基本API创建和进阶配置,如HTTPS开启和跨域传参,展示了其在Python Web开发中的优势。
摘要由CSDN通过智能技术生成

天下武功,唯快不破。在软件开发中更是如此,“快”能从多方面提升用户体验。谈到Python,它似乎天生就和速度无关,你可能很熟悉Django、Flask这些框架,虽然开发效率的确不错,但是速度就一言难尽。那么在前后端分离开发的时代,有没有能拿得出手的Python Web框架呢?当然是有的,FastApi它来了。

一、为什么是FastApi?

人们在介绍FastApi的时候通常会说“FastApi”是一个高性能的异步WEB框架。我相信没有哪个程序员会跟“高性能”过不去,这往往也是我们所追求的东西。fastapi具有并发性能强、能够快速上手、容错能力强、自动生成交互式文档的特点,这些都是我们选择它的理由。

二、到底有多快?

很多人介绍FastApi框架时,经常说其并发性能能够和NodeJS以及Go媲美,其实言过其实。在Go语言中文社区中梦想做小猿分别对Go、Flask、FastApi做了性能测试,迫于篇幅限制,我这里直接放结果:

FastAPI: 500并发 30秒:Speed=955466 pages/min, 238685 bytes/sec

Flask: 500并发 30秒:Speed=33706 pages/min, 96457 bytes/sec

Go: 500并发 30秒:Speed=116962 pages/min, 278740 bytes/sec

可见Go还是很强大的,但是fastapi已经远远超过了同为python框架的 flask。
与PHP7对比:

分别用PHP7、FastAPI从mongodb数据库中取出相同的数据做成接口,相同参数得到相同的数据结果,速度如下:

FastApi用时43.06ms:
在这里插入图片描述

PHP7 用时43.73ms:
在这里插入图片描述

经过多次测试,成绩较为稳定,无需取平均值,由此看来,FastAPI速度上是可以的。

三、安装相关模块

安装FastApi执行 pip install fastapi
由于FastApi还需要一个ASGI服务框架 uvicorn,执行pip install uvicorn
注意Linux下一般会报错如下:
在这里插入图片描述

Centos 执行yum install python3-devel,Ubuntu 执行sudo apt-get install python3-dev,即可。

四、Hello,API

现在就来快速上手吧:(本文所有代码可关注公众号:pythonjs,发送“fastapi”获取!
第一个api:
创建文件zhiliao.py,码代码:

# -*- coding:utf-8 -*-
# 公众号:pythonjs

from fastapi import FastAPI 

#创建一个FastApi实例
app = FastAPI()

#创建访问路径,下面的函数用来处理"/"的GET请求
@app.get("/")
def read_root():
    return {
   "Hello": "Api"}

然后在zhiliao.py文件所在目录,执行uvicorn zhiliao:app --reload

其中,zhiliao是py文件名,冒号后面的app是我们在代码中创建的FastAPI实例,这一点类似Flask,其他参数等下会详细说到。

执行之后,得到反馈信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

资深Python开发工程师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值