论文部分内容阅读
随着信息化技术的高速发展,我国的教育信息化工作也于20世纪90年代开始展开,并在基础设施建设、数字内容建设、远程教育、个性化教育等方面取得了快速的发展。在教育信息化中,高等教育质量监测是其中重要的环节,通过高等教育质量监测,可以帮助高等院校准确把握本校整体的教育发展状况、持续改进教育教学中的不足之处、有效推动高等教育的内涵式发展。但由于高等教育质量监测信息化起步较慢,国内只有少数高校建立了自己的教育质量监测数据平台,且这些平台仍存在两个共性问题:一是在功能上比较片面,大部分平台的监测指标只涉及了教师、学生或者课堂,缺乏学校办学条件、学科专业、人才培养、教学管理、质量监控等重要指标的监测,无法从全局监测高校的教育质量情况;二是在软件架构上无法满足发展需求,教育质量监测信息化仍处于起步阶段,平台的功能需求会不断地变动拓展,而这些平台都采用了传统的单体架构开发,这种架构模式在项目初期具有开发简单、部署方便的优点,但随着业务的快速发展,代码量会逐渐变大,基于单体架构开发的应用会出现开发效率低、代码维护难、稳定性差、拓展性差、部署不灵活等缺点,无法满足平台快速发展的需求。针对上述问题,并结合广西师范大学教务处的具体需求,本文研究并实现了一个基于微服务的高等教育质量监测数据平台。主要的工作内容有如下两个部分:(1)基于微服务完成了平台的设计与实现。该平台依据教育部在《普通高等学校本科教学工作审核评估方案》提出的监测指标为基础,分别从学校概况、办学条件、师资队伍、学科专业、人才培养、学生信息、教学管理与质量监控等七个方面作为采集指标,以在线方式为高校提供全面的教育质量数据采集服务,使高校能够从全局监测校内的教育质量情况。同时,该平台还在数据采集服务的基础上为二级学院提供专业评估服务,使高校能够从学科专业层面对本校的教育质量进行监测评估。为了解决传统单体架构的缺点,使用了微服务作为平台的总体架构,该平台根据微服务拆分原则将平台拆分成多个微服务,包括单点登录服务、文件服务、搜索服务、数据填报服务、数据审核服务、数据可视化服务等十八个服务,每个服务单独开发与部署,具有开发简单、维护方便、部署灵活等特点,同时随着业务的快速发展,可以根据需求增加新的微服务,极大地提高了平台的拓展性和可用性,能够很好地满足高等教育质量监测信息化快速发展的需求。(2)对该平台中出现的关键问题进行了详细研究,并提出了相应的解决方案,主要工作包括:提出了基于Redis+Lua的分布式锁方案,解决了分布式架构中数据不一致的问题;提出了分布式限流与单机限流结合的方案实现服务限流功能,解决了因突发流量导致的服务故障问题;使用一致性hash环算法解决了在分布式环境下缓存命中率低的问题等。