返回项目列表

师大云学 - 全栈开发

基于 Spring Cloud Alibaba 开发的在线教育平台,负责全栈开发工作,包括微服务架构设计和前端实现。

2025.07-2025.09

项目背景

师大云学是一个面向高校师生的在线教育平台,提供课程学习、在线考试、作业提交、成绩查询等功能。项目需要支持高并发访问,保证系统的稳定性和可扩展性。作为全栈开发工程师,我负责微服务架构设计、后端服务开发、前端应用实现以及 DevOps 流程搭建。

技术架构

项目采用 Spring Cloud Alibaba 微服务架构,包含用户服务、课程服务、订单服务、支付服务、考试服务等核心微服务。使用 Nacos 作为服务注册中心和配置中心,Sentinel 实现流量控制和熔断降级,RabbitMQ 处理异步消息,Redis 作为缓存层。前端使用 React + TypeScript 构建,通过 RESTful API 与后端服务通信。

核心功能

课程管理:支持课程创建、编辑、发布、下架等全生命周期管理

在线学习:提供视频播放、课件下载、在线笔记等学习功能

作业系统:支持作业发布、提交、批改、成绩查询等功能

在线考试:支持题库管理、试卷生成、在线考试、自动阅卷等功能

订单支付:集成支付宝、微信支付,支持课程购买和订单管理

用户中心:支持个人信息管理、学习进度查看、证书下载等功能

消息通知:支持系统通知、课程提醒、考试提醒等消息推送

数据分析:提供学习数据统计、课程分析、用户行为分析等功能

技术栈

Spring Cloud AlibabaSpring BootMySQLRedisRabbitMQReactTypeScriptNext.jsJenkinsKubernetes

工作职责

  • 1

    基于 Spring Cloud Alibaba 设计并实现微服务架构,包括用户、课程、订单等核心服务

  • 2

    开发 RESTful API 接口,实现课程管理、订单处理、支付集成等功能

  • 3

    构建 React + TypeScript 前端应用,实现课程展示、购物车、支付流程等功能

  • 4

    集成 RabbitMQ 实现消息通知系统,确保异步任务的可靠执行

  • 5

    设计 Redis 缓存策略,优化课程查询和用户数据访问性能

  • 6

    配置 Jenkins CI/CD 流水线,实现自动化构建和部署

技术难点与解决方案

微服务间通信优化

使用 OpenFeign 实现服务间调用,配置合理的超时时间和重试策略,使用 Sentinel 实现熔断降级,避免服务雪崩,最终将服务间调用成功率提升至 99.9%

高并发课程查询优化

设计多级缓存策略,本地缓存 + Redis 缓存 + 数据库三级缓存,使用 Redis 集群保证高可用,最终将课程查询响应时间从 500ms 优化至 50ms

支付流程可靠性保证

实现支付状态机,确保支付流程的幂等性和最终一致性,使用消息队列处理支付回调,设置合理的重试机制,最终将支付成功率提升至 99.5%

前端性能优化

使用 React 的虚拟 DOM 和 memo 优化渲染,实现路由懒加载和组件懒加载,使用 CDN 加速静态资源,最终将首屏加载时间优化至 1.2 秒

项目成果

实现了日访问量 10 万+ 的高并发在线教育平台

课程加载速度提升 60%,用户停留时间增加 35%

微服务架构部署成功,服务可用性达到 99.95%

CI/CD 流水线搭建完成,部署时间从小时级缩短至分钟级