项目总体架构
SurveyKing Pro 是一个基于现代 Web 技术栈构建的企业级问卷调研平台,采用前后端分离架构,支持高并发、高可用的业务场景。
🏗️ 系统架构图
🔄 技术架构分层
1. 前端层 (Frontend Layer)
- 技术栈: React + TypeScript + Ant Design
- 框架: UMI 框架
- 状态管理: 自定义状态管理
- 构建工具: UMI 内置构建
- 代码质量: ESLint + Prettier
2. 接入层 (Gateway Layer)
- 负载均衡: Nginx(可选)
- 静态资源: CDN 加速
- SSL/TLS: HTTPS 支持
3. 应用层 (Application Layer)
- 框架: Spring Boot 3.x
- 架构: 单体模块化架构
- 安全: Spring Security + JWT
- 缓存: Redis
- 消息队列: 基于 Redis 实现
- 定时任务: Quartz 集群模式
- 文件处理: EasyExcel + 多种存储支持
4. 数据层 (Data Layer)
- 关系型数据库: MySQL(主要数据存储)
- 缓存: Redis(缓存 + 消息队列)
- 对象存储: 支持 S3、MinIO、阿里云 OSS、腾讯云等
- 数据操作: MyBatis Plus
5. 基础设施层 (Infrastructure Layer)
- 监控: 内置监控组件(链路追踪、日志服务、指标收集)
- 部署: 支持传统部署和容器化部署
- 文件存储: 多种存储方式支持