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

相关推荐
PieroPc16 小时前
使用 uvicorn + NSSM(作为 Windows 服务)
windows·fastapi·nssm·uvicorn
SmartBrain19 小时前
FastAPI实战:基于 SQLAlchemy的后端接口开发流程
数据库·架构·fastapi
岱宗夫up20 小时前
FastAPI进阶3:云原生架构与DevOps最佳实践
前端·python·云原生·架构·前端框架·fastapi·devops
PieroPc21 小时前
在飞牛 NAS(fnOS)上使用 Docker 部署 FastAPI 应用(这个是从错误学习教程 图是可以的)
学习·docker·fastapi·飞牛nas
七夜zippoe21 小时前
集成测试实战:构建可靠的测试金字塔体系
python·log4j·e2e·fastapi·持续集成·flask api
曲幽2 天前
FastAPI实战:WebSocket长连接保持与心跳机制,从入门到填坑
javascript·python·websocket·keep-alive·fastapi·heartbeat·connection
岱宗夫up2 天前
FastAPI进阶:从入门到生产级别的深度实践
python·信息可视化·fastapi
PieroPc3 天前
2026年,我的AI编程助手使用心得(纯个人体验,非评测)
javascript·css·html·fastapi·ai编程
Li emily4 天前
如何获取港股实时行情数据API接口
api·fastapi·港股
SmartBrain5 天前
FastAPI 进阶(第二部分):SQLAlchemy ORM(含考题)
数据库·人工智能·aigc·fastapi