基于SpringCloud的在线教育平台的设计与实现
作者单位:华中科技大学
学位级别:硕士
导师姓名:裴小兵
授予年度:2020年
学科分类:0401[教育学-教育学] 04[教育学] 08[工学] 0835[工学-软件工程] 040110[教育学-教育技术学(可授教育学、理学学位)] 081202[工学-计算机软件与理论] 0812[工学-计算机科学与技术(可授工学、理学学位)]
摘 要:移动互联网进入下半场,在线教育寻找新的机会点。坐拥超10亿用户的微信平台,凭借社交关系链强大的分享传播能力,为在线教育领域的掘金者带来新的增长红利,成为企业打造私域流量、用户增长与转化的重要阵地。微信小程序的跨平台、轻量级开发、微信平台的服务支持等优势,使得企业能够低成本、快速验证市场需求,同时媲美原生App的交互体验、便捷等优点满足了用户的碎片化学习需求。高性能的微服务软件架构,使得企业快速响应需求变化。基于SpringCloud的在线教育平台主要包括微信小程序前台和网页端管理后台。小程序为用户提供了购买课程、支付订单、播放视频、分享课程等功能,形成了完整的在线学习闭环。管理后台为企业员工提供了便捷的信息配置操作。系统服务端应用Spring Cloud框架搭建各个微服务子系统,包括用户服务、课程服务、笔记服务、优惠券服务、购物车服务以及订单服务。采用Rabbit MQ延迟消息队列实现课程定时上下架功能;采用Kafka执行异步任务,处理耗时的数据库回写操作;在Zuul网关中通过token校验过滤器和JWT,实现用户登录认证和鉴权功能;对系统进行统一响应处理与统一异常处理,便于维护系统,保证服务端的扩展性、高可用和高性能。前端采用***框架搭建响应式的管理后台页面。持久层采用My SQL和Redis存储数据,通过Spring Data JPA操纵数据。系统采用前后端分离的开发模式,通过Maven进行项目与版本管理,依据软件工程理论完成需求分析、架构设计、功能模块设计及数据库设计,编写测试用例完成系统的功能测试,采用Jmeter软件测试系统性能,最后对测试结果进行了说明。经过集成测试,小程序和管理后台的交互流畅、运行良好,能够满足在线教育平台用户的实际使用需求。