微服务框架下的信息服务平台建设
2021-04-04唐盛平
唐盛平
(广州大学松田学院 广东 广州 511370)
1 引言
校园内的信息服务平台,是当前院校教学、教务等各方面管理所必需的基础服务设施。传统校园信息服务平台存在庞大烦琐、使用不便、拓展性弱、资源利用率较低、模型框架不清、职责混杂等问题。随着互联网技术的发展,院校管理者及师生迫切需要一种移动化更强,更具专业性,能够社交并创设场景的校园信息服务平台。近年来,微服务框架因其动态扩展能力强,可以独立部署各类服务的特性,为校园信息服务平台设计应用提供了新思路和新方法。
2 微服务概述
微服务与传统单体式架构方案不同,将整个应用拆分成多个功能,所有功能都是一项服务,针对各项服务进行单独部署,构建符合自身需求的服务架构,各项服务都是独立的,所以当某项服务出现问题时,互相不会产生影响。例如在进行某项信息服务时,搜索功能、相关信息推荐功能、权限管理功能、信息获取功能等都属于服务类型,可以独立运行。将不同的服务进行重组,服务之间可以进行通信,并具备一定的拓展性,满足功能集成。微服务架构可以对各项服务同时开发构建、调整与检测,不需要像单体开发模式那样一个项目影响其他项目。微服务框架开发周期很短,能够进行敏捷部署,拓展性强,可以根据自身需求快速进行服务项目调整,项目间互不干扰,无论对于开发人员还是对于使用者来讲,都更加开放便捷。
3 微服务架构
微服务架构具有服务独立、职责独立、部署独立、功能独立、轻量级通信等优势,在进行微服务框架设计过程中需要处理以下问题:服务数据的来源,服务注册和发现,路由器设置,安全性与可靠性,服务场景,通讯方式等。开展这些服务需要在一个统一的微服务框架下进行,该框架可以对各类服务进行单独的部署、升级、运行、拓展等管理,并且要保证运行过程安全可靠,容易维护。可以将微服务分为5个层次。
首先是数据层,该层为系统搜集数据,管理数据来源和数据。
基础层。该层用于管理服务的发现、注册、路由器、数据容器、权限角色、系统运行健康、安全可靠等方面的基础功能。
服务层,该层用来确保微服务系统统一以一致的形式向外界用户提供服务。
业务层,该层面用来管理系统业务,确保各个层面的服务可以共同协作,完成一项任务。
最后是表示层,该层以可视化、直观的形式将服务结果呈现在客户端,由用户检视。
4 微服务框架下校园信息服务平台的构建
校园信息服务平台构建的思路是建立体系,尊重使用需求,注重实用性。学校提出使用需求,平台构建确保技术构架、接口封装,并制定开发规范,满足校园信息服务平台的各类场景、各类需求。
校园信息服务平台的应用状态有:app门户、微信平台、网页平台、qq平台等。其中app门户满足校内用户使用需求,微信、qq以及网页平台,是校内校外访客都可以使用的。
校园根据自己的情况定制微服务应用。例如有的高校需要设置专升本、研究生专题、中高本专题等服务,大部分学校都需要建立微信矩阵和app集成。通用的微服务应用有校园资讯服务、教学服务、学工服务、教工服务、后勤服务等。微服务的开发平台包含开发者管理、接口管理、开发工具与认证管理。校园信息服务平台下设的微服务管理平台包含人员管理、应用管理、安全管理、权限管理、门户管理等。
微服务平台上要实现各类教学、教务资源共享,利用网络和微服务平台,开展各类活动。在2020年疫情防控期间,使用微服务平台开展远程教育,并且在后续教学工作中,将线上线下教学结合起来,学生可以打破时间空间限制,充分利用微服务平台提供的各类信息开展学习活动。
校园信息服务平台常用开源分布式框架,例如dubbo或者spring cloud。使用这些框架规涵盖校园信息服务的各类结构和解决方案,以及其他软件设施。服务的发现和注册采用的是spring cloud中的eureka组件,资源均衡使用的是ribbon组件,通讯、超时、容错管理采用spring cloud中的hystrix组件进行开发[1]。
校园信息服务平台微服务框架实现是通过微信公众号开展服务,有统一的身份验证方式,结合移动信息服务。整个结构较为基础,学生最为关注的信息,如选课、成绩、教室作为、讲座信息、就业信息、财务信息、校园服务、黄页、通知等模块,所有模块都是单独的微服务。校园信息服务平台微服务通过JSON模式发布微服务框架下的服务项目,启动自注册,服务地址透明可管理。为信息平台的各项服务提供高效的通讯机制,管理校园路由,实现各个服务的负载均衡,将资源分配给校园用户关注度和使用率较高的服务。根据信息获取需要,对数据容器进行动态迁移,针对不同物理节点进行不同的扩容方式,对系统进行运行状态健康检查。一个数据容器出问题了,系统会自动切换到其他容器上。所有级别的容器都在系统的配额管理下,确保各个服务不会滥用或者无故占用资源。用户使用过程中,系统对服务状态进行监控。一旦发生服务崩溃的问题,会及时通知用户,用户可以更换访问节点[2]。
5 结语
当前微服务框架研究更多地集中在利用微服务解决现实问题,建立分层框架系统,对信息平台中的注册、负载、可靠性、安全性等不同问题给出集中解决方案,基于这一框架建立校园信息服务平台,让校园信息服务的移动性、专业性更强,并且能根据校园管理需求进行服务拓展,提升了校园信息服务质量。