修复重复初始化问题 - 统一Redis连接管理

主要修复:
1. 创建统一Redis连接管理器 (src/core/redis_manager.py)
   - 单例模式管理所有Redis连接
   - 懒加载连接,避免重复初始化
   - 线程安全的连接管理

2. 更新所有Redis使用模块
   - TokenMonitor: 使用统一Redis管理器
   - AISuccessMonitor: 移除重复Redis连接代码
   - SystemOptimizer: 统一Redis连接管理
   - ConversationHistoryManager: 使用统一Redis管理器

3. 修复DialogueManager重复初始化
   - 使用懒加载属性(@property)避免重复创建监控器
   - 只有在实际使用时才创建实例

4. 优化启动性能
   - 避免重复的Redis连接创建
   - 消除重复的TSP助手初始化
   - 减少启动时的日志输出

技术改进:
- 单例模式Redis管理器
- 懒加载组件初始化
- 统一连接管理
- 线程安全设计

解决启动卡顿问题,提升系统响应速度
This commit is contained in:
赵杰 Jie Zhao (雄狮汽车科技)
2025-09-18 19:57:35 +01:00
parent 228e9b838f
commit 4b4bd683d9
11 changed files with 318 additions and 169 deletions

View File

@@ -53,26 +53,8 @@ def main():
logger.info("正在启动TSP智能助手综合管理平台...")
# 快速系统检查(不创建完整实例
try:
from src.core.database import db_manager
from src.core.llm_client import QwenClient
# 快速测试数据库连接
db_ok = db_manager.test_connection()
# 快速测试LLM连接
llm_client = QwenClient()
llm_ok = llm_client.test_connection()
logger.info(f"系统检查结果: 数据库={db_ok}, LLM={llm_ok}")
if not (db_ok and llm_ok):
logger.warning("系统检查发现问题,但继续启动...")
except Exception as e:
logger.error(f"系统检查失败: {e}")
print(f"警告: 系统检查失败 - {e}")
# 跳过系统检查,直接启动(避免重复初始化
logger.info("跳过系统检查,直接启动服务...")
# 导入并启动Flask应用
from src.web.app import app