项目简介
这是一个功能完善的在线教育平台,支持教师直播授课、学生在线学习、课程管理、作业提交、在线考试等核心功能。
技术栈
前端
- React 18 + TypeScript
- Redux Toolkit 状态管理
- Ant Design UI组件库
- WebRTC 实时音视频
后端
- Spring Boot 2.7
- Spring Cloud 微服务架构
- MySQL + Redis
- RabbitMQ 消息队列
核心功能
1. 直播授课
- 实时音视频互动
- 白板共享
- 屏幕分享
- 实时聊天
2. 课程管理
- 课程创建与编辑
- 视频上传与转码
- 课程分类与搜索
- 学习进度跟踪
3. 在线考试
- 题库管理
- 自动组卷
- 限时考试
- 自动阅卷
4. 用户系统
- 角色权限管理
- 学习记录
- 证书颁发
- 积分系统
项目亮点
- 高并发处理:使用Redis缓存热点数据,支持万人在线
- 实时互动:基于WebRTC实现低延迟音视频通信
- 微服务架构:服务解耦,易于扩展和维护
- 智能推荐:基于协同过滤的课程推荐算法
系统架构
1 | ├── gateway-service # API网关 |
性能优化
- CDN加速视频资源加载
- Redis缓存热点数据
- 数据库读写分离
- 接口限流与降级
项目收获
通过这个项目,深入理解了微服务架构的设计与实现,掌握了高并发系统的优化方法,以及实时音视频技术的应用。