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.终止程序前需要处理一些后续,清理之类。

相关推荐
懒人村杂货铺2 小时前
FastAPI + 前端(Vue/React)Docker 部署全流程
前端·vue.js·fastapi
创新技术阁2 小时前
CryptoAiAdmin 项目后端启动过程详解
后端·python·fastapi
lomocode1 天前
接口报 500 了,日志里却空空的?FastAPI 异常处理最佳实践
fastapi·ai编程
百分三十七1 天前
FastApi接口文档访问超时加载不出来解决方案来了
python·fastapi
计算衎1 天前
基于python的FastAPI框架目录结构介绍、开发思路和标准开发模板总结
开发语言·python·fastapi
闲人编程2 天前
FastAPI路径操作、查询参数与请求体:构建高效API的完整指南
python·api·fastapi·请求体·codecapsule·查询参数
Misnice2 天前
使用 SQLAlchemy 连接数据库
数据库·python·mysql·fastapi
计算衎2 天前
FastAPI+ PostgreSQL+ VUE 实现一个数据平台展示案例
vue.js·python·postgresql·fastapi
计算衎2 天前
Python的FastAPI,Flask,Django Web框架的区别
python·django·flask·fastapi
Lvan的前端笔记3 天前
入门FastAPI和uvicorn以及和LangChain、LangGraph的简单结合
langchain·fastapi