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

相关推荐
曲幽3 小时前
从安装到上线:一份 Nginx 实战指南,让你的 Web 应用稳建安全
python·nginx·flask·fastapi·web·gunicorn·uvicorn
laufing7 小时前
sqlmodel -- fastapi 连接关系型数据库
数据库·fastapi·sqlmodel
PieroPc7 小时前
用FastAPI 后端 和 HTML/CSS/JavaScript 前端写一个博客系统 例
前端·html·fastapi
bst@微胖子8 小时前
CrewAI+FastAPI的Pipelines功能实现多CrewAI工作流以及Flows功能实现复杂工作流
服务器·windows·fastapi
山沐与山8 小时前
【FastAPI】FastAPI RESTful API实战:从接口规范到优雅设计
后端·restful·fastapi
哈里谢顿17 小时前
事件循环介绍
fastapi
知行学思17 小时前
Python配置管理完全指南:从dotenv到pydantic_settings
数据库·python·fastapi·环境变量·配置管理·pydantic·dotenv
哈里谢顿18 小时前
FastAPI 从 0 到 1:史上最良心的现代 Python Web 框架入门指南
fastapi
minhuan1 天前
大模型应用:大模型的本地 API 服务:FastAPI 封装与接口鉴权.44
fastapi·模型部署·大模型应用·模型接口鉴权·jwt应用
专注前端30年1 天前
AI工程化_MLOps实战:模型部署+FastAPI+ONNX Runtime+TensorRT加速全解析
人工智能·fastapi