去掉redis
启动时只检查数据库连接不更新表结构
This commit is contained in:
33
main.py
33
main.py
@@ -1,10 +1,10 @@
|
||||
from fastapi import FastAPI
|
||||
from fastapi.middleware.cors import CORSMiddleware
|
||||
from contextlib import asynccontextmanager
|
||||
from sqlalchemy import text
|
||||
|
||||
from app.config import settings
|
||||
from app.database import init_db
|
||||
from app.redis_lock import redis_manager
|
||||
from app.database import engine
|
||||
from app.routes import router
|
||||
from app.logger import get_logger, LoggerManager
|
||||
|
||||
@@ -20,15 +20,20 @@ async def lifespan(app: FastAPI):
|
||||
logger.info("🚀 应用启动中...")
|
||||
|
||||
try:
|
||||
# 初始化数据库
|
||||
logger.info("📊 初始化数据库连接...")
|
||||
await init_db()
|
||||
logger.info("✅ 数据库连接成功")
|
||||
|
||||
# 初始化Redis
|
||||
logger.info("🔴 初始化Redis连接...")
|
||||
await redis_manager.connect()
|
||||
logger.info("✅ Redis连接成功")
|
||||
# 验证数据库连接
|
||||
logger.info("📊 验证数据库连接...")
|
||||
try:
|
||||
async with engine.begin() as conn:
|
||||
# 执行简单的查询来验证连接
|
||||
result = await conn.execute(text("SELECT 1"))
|
||||
connection_test = result.scalar()
|
||||
if connection_test == 1:
|
||||
logger.info("✅ 数据库连接验证成功")
|
||||
else:
|
||||
raise Exception("数据库连接测试失败")
|
||||
except Exception as db_error:
|
||||
logger.error(f"❌ 数据库连接验证失败: {db_error}")
|
||||
raise
|
||||
|
||||
logger.info(f"🎉 {settings.app_name} 启动完成!")
|
||||
yield
|
||||
@@ -40,12 +45,6 @@ async def lifespan(app: FastAPI):
|
||||
finally:
|
||||
# 关闭时清理
|
||||
logger.info("🛑 应用关闭中...")
|
||||
try:
|
||||
await redis_manager.disconnect()
|
||||
logger.info("✅ Redis连接已关闭")
|
||||
except Exception as e:
|
||||
logger.error(f"❌ Redis关闭时出错: {e}")
|
||||
|
||||
logger.info("👋 应用已关闭")
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user