feat(webui): 添加WebSocket支持实现实时任务状态更新

- 在注册任务和批量任务中集成WebSocket连接
- 添加TaskManager管理任务状态和日志推送
- 前端app.js重构支持WebSocket与轮询降级机制
- 配置模块重构为完全基于数据库存储
This commit is contained in:
cnlimiter
2026-03-15 03:52:24 +08:00
parent 76efc047b3
commit 3d8a90cda9
11 changed files with 1028 additions and 248 deletions

View File

@@ -18,7 +18,14 @@ from src.config.settings import get_settings
def setup_application():
"""设置应用程序"""
# 获取配置
# 初始化数据库(必须先于获取设置)
try:
initialize_database()
except Exception as e:
print(f"数据库初始化失败: {e}")
raise
# 获取配置(需要数据库已初始化)
settings = get_settings()
# 配置日志
@@ -28,14 +35,7 @@ def setup_application():
)
logger = logging.getLogger(__name__)
# 初始化数据库
try:
initialize_database()
logger.info("数据库初始化完成")
except Exception as e:
logger.error(f"数据库初始化失败: {e}")
raise
logger.info("数据库初始化完成")
# 检查数据目录
data_dir = project_root / "data"