智学云是一个基于 Spring Cloud Alibaba 微服务架构构建的大型在线教育平台。项目集成了 AI 智能助手 (RAG)、视频点播 (分片上传/自动转码)、高并发秒杀、实时弹幕互动 等核心业务场景,旨在提供一套完整的企业级在线教育解决方案。
- 检索增强生成 (RAG):基于 Elasticsearch 向量检索课程知识库,结合大模型(通义千问/智谱 GLM-4)实现精准的课程答疑。
- 智能内容审核:集成 AI 审核能力,对弹幕、评论进行实时违规检测,保障平台内容安全。
- 大文件处理:支持 GB 级视频文件的 分片上传、断点续传 和 秒传。
- 自动化转码:文件上传合并后,自动触发 FFmpeg 转码任务,适配 HLS/MP4 等多种播放格式。
- 极致性能:采用 Redis + Lua 脚本 实现库存扣减的原子性,单机 QPS 可达万级,彻底杜绝超卖。
- 削峰填谷:秒杀请求通过 MQ 异步削峰,保护下游数据库。
- 弹幕架构:基于 Netty + WebSocket 构建高性能长连接服务。
- 集群广播:利用 Redis Pub/Sub 实现跨节点的消息广播,支持百万级用户同时在线互动。
- 分布式事务:集成 Seata (AT 模式) 保证订单、库存、积分跨服务的一致性。
- 支付策略:采用策略模式(Strategy Pattern)封装支付宝、微信支付渠道,易于扩展。
- 基础框架:Spring Boot 3.2, Spring Cloud 2023, Spring Cloud Alibaba
- 服务治理:Nacos (注册/配置), Sentinel (熔断限流), Gateway (网关)
- 数据存储:MySQL 8.0, Redis 7.0, Elasticsearch 8.x, MinIO (对象存储)
- 消息队列:RabbitMQ (异步解耦/延时队列)
- 分布式事务:Seata 1.6
- 任务调度:XXL-Job
- ORM 框架:MyBatis-Plus
- 管理后台:Vue 3, Vite, Element Plus, Pinia
- 移动端:微信小程序 (原生开发)
zhixue-cloud
├── zhixue-gateway # 网关服务 (9001)
├── zhixue-auth # 认证中心 (9100)
├── zhixue-common # 通用模块 (工具类/异常处理)
├── zhixue-api # Feign 接口定义
├── zhixue-modules # 业务微服务聚合
│ ├── zhixue-system # 系统管理 (用户/角色/权限)
│ ├── zhixue-course # 课程中心 (课程/章节/类目)
│ ├── zhixue-media # 媒资中心 (视频上传/转码)
│ ├── zhixue-order # 订单中心 (订单/支付/Seata)
│ ├── zhixue-marketing # 营销中心 (秒杀/优惠券)
│ ├── zhixue-interaction # 互动中心 (弹幕/点赞/评论)
│ └── zhixue-ai # AI 中心 (RAG/LLM/审核)
├── zhixue-admin-web # 后端管理前端 (Vue3)
└── zhixue-app-mp # 微信小程序端
- JDK 17+
- Maven 3.8+
- MySQL 8.0+
- Redis 7.0+
- Nacos 2.x
- RabbitMQ
- MinIO
- Elasticsearch 8.x (可选,AI 功能依赖)
-
克隆项目
git clone https://github.com/StarLiu-BB/JiaXing-s-Magic-Class.git cd zhixue-cloud -
初始化数据库
- 创建数据库
zhixue_cloud。 - 导入
sql目录下的初始化脚本(如有)。
- 创建数据库
-
配置 Nacos
- 启动 Nacos Server。
- 将
config目录下的配置文件导入 Nacos 配置中心,或修改各模块bootstrap.yml中的 Nacos 地址。
-
启动微服务
- 建议启动顺序:
zhixue-gateway->zhixue-auth->zhixue-system-> 其他业务模块。
- 建议启动顺序:
-
启动前端
# 管理后台 cd zhixue-admin-web npm install npm run dev
欢迎提交 Issue 或 Pull Request 来完善项目!
- Fork 本仓库
- 新建 Feat_xxx 分支
- 提交代码
- 新建 Pull Request