feat(project): 基于Redis实现项目初始化任务分布式管理

- 引入Redisson依赖,集成Redisson客户端实现Redis操作
- 新增RedisService封装Redis常用操作方法,支持键值、哈希和集合操作
- ProjectInitTaskVO新增userId字段,标识任务所属用户
- ProjectInitAsyncService接口新增用户任务相关方法,支持按用户获取任务列表和处理中的任务数
- ProjectInitAsyncServiceImpl改用Redis存储任务状态和用户任务列表,替代原内存存储
- 项目初始化任务异步执行流程支持通过Redis保存状态并自动过期
- 实现进度推送由Service层统一通过SSE发送至对应用户,无需Controller中重复推送
- ProjectInitSseController新增基于当前用户Token的任务查询接口,支持获取任务列表、统计信息及单任务状态
- 优化异常处理和任务取消逻辑,确保Redis中任务状态正确更新
- 新增application-dev.yaml Redisson客户端配置,支持单机Redis服务连接
This commit is contained in:
2026-03-28 17:56:05 +08:00
parent 6d91be8af5
commit 32bff3aabc
7 changed files with 522 additions and 91 deletions

View File

@@ -145,6 +145,12 @@
<version>1.39.0</version>
</dependency>
<!-- Redisson Spring Boot Starter -->
<dependency>
<groupId>org.redisson</groupId>
<artifactId>redisson-spring-boot-starter</artifactId>
<version>3.27.0</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>