FastAPI 学习之路(五十四)startup 和 shutdown

在实际开发中,总会遇到这样的场景,我们想在启动或者终止的时候,做一些事情,那么应该如何实现呢?fastapi其实给我们提供了这样的操作:

复制代码
from fastapi import FastAPI


app = FastAPI()


@app.on_event("startup")
def startup_event():
    print("this is startup")


@app.on_event("shutdown")
def shutdown_event():
    print("this is shutdown")

其实很简单,我们注入这两个事件即可。在结束的时候,如果有IO的操作那么必须走同步的方式,不能用异步的方式。

那么实际开发中如何使用呢?比如:

1.数据库的连接,断开连接,可以在开始和结束前。

2.redis的链接和断开链接

3.初始化一些前置条件

4.终止程序前需要处理一些后续,清理之类。

相关推荐
曲幽1 天前
FastAPI配置管理避坑指南:从硬编码到 .env 与 pydantic_settings 类,连路由用法都给你捋清楚
python·fastapi·web·settings·config·pydantic·.env·dotenv·.env.prod
世界尽头与你1 天前
FastAPI Swagger Api 接口未授权访问漏洞
安全·网络安全·渗透测试·fastapi
rannn_1111 天前
【FastAPI|快速入门】第一个FastAPI程序、路由、参数、相应类型、自定义响应数据格式、异常响应处理
python·ai·fastapi·web·开发
java1234_小锋1 天前
FastAPI + Vue 3 前后端分离:项目设计与工程实践(偏“能落地”的最佳实践)
前端·vue.js·fastapi
曲幽2 天前
FastAPI 文件上传避坑全指南:分块存盘、类型校验与安全兜底
python·upload·fastapi·web·file·chunk·validate·filetype
尘埃落定wf2 天前
FastAPI 鉴权怎么写?中间件和依赖注入一次说清楚
python·中间件·fastapi
曲幽3 天前
FastAPI + Pydantic 模型终极实战手册:从能跑就行到固若金汤,这些技巧你一定用得上
python·fastapi·web·model·field·pydantic·validator·basemodel
L-影3 天前
吃透FastAPI的响应类型
fastapi·响应类型
尘埃落定wf3 天前
用 FastAPI 将 LangChain Agent 封装成对外接口
langchain·fastapi
曲幽5 天前
FastAPI + SQLAlchemy 2.0 通用CRUD操作手册 —— 从同步到异步,一次讲透
python·fastapi·web·async·sqlalchemy·session·crud·sync·with