当前位置:首页 期刊杂志

微服务架构SaaS多租户校园管理平台

时间:2024-09-03

南京工业大学浦江学院计算机与通信工程学院 马文艺 徐文欣

现代社会已经成为信息化的社会,目前大多数高校的校园信息化管理系统还处于发展阶段,通常一个学校包含了多个信息化系统,存在着信息不统一,维护成本高,性能低等一系列问题。本文将设计一个以SaaS(软件即服务)模式与微服务架构为基础的校园管理平台。将传统的Saas模式与微服务技术结合碰撞,设计出统一的、高性能的、高扩展性的校园管理平台。对于高校:免去系统开发与维护的成本,以租赁的方式按需定制;对于教师:以数字化的方式办公、教学,随时掌握学生学习动态,高效率的对信息进行统计与收集;对于学生:提供了统一的信息检索服务及其它学习生活服务,大学生活更加快捷、方便,让学生拥有更多的时间专注于学习和兴趣的培养。

随着互联网的飞速发展,现代社会已经成为一个信息化时代。目前,不光是公司、政府等一些地方实行了信息化管理,许多学校也依托校园网,将学校的教学、管理和通知发布等项目组成了一个信息化管理系统。但这些校园信息化管理系统发展并不成熟,它们主要存在以下的缺点:

(1)一个高校的校园管理系统往往有多个,不统一;

(2)高校的校园管理系统几乎都存在着性能问题;

(3)功能不全,还需要引入外来应用。

举个例子,就拿这次的2020年初至今的“新冠肺炎”来说,这是疫情高校需要收集师生的健康信息,大多数高校还是引入了“今日校园”、“企业微信”、“腾讯文档”等一系列的外来应用进行信息统计。如果各大高校能拥有完善的信息化管理系统,是否就可以进行更加高效与统一的信息的管理与收集呢?

本系统的诞生就是为了解决这个问题,它引入了SaaS软件服务模式及微服务软件架构。依靠SaaS的多重租赁、服务、可扩展的特性结合微服务的服务独立部署、独立扩展的优点,可以自由灵活的为高校提供定制化的服务,为高校解决数据安全、系统性能、服务不统一、软件维护等一系列问题。

1 开发技术与工具

1.1 服务端框架及技术

(1)Java

Java是面向对象编程的一门语言,它很好的运用了C++的各种优点,摒弃了C++中难以理解的指针等等概念,所以Java也是一门简单易用、跨平台、功能强大的语言。Java是面向对象编程的静态语言代表,让开发者能够用优雅的思维实现复杂的业务逻辑。Java多用于Web服务编程。

(2)Spring Boot

为快速启动且最小化配置的Spring应用而设计,简化了传统Spring应用的开发。简化了繁琐的配置项目、提供了内置的Http服务器、简化了Maven的依赖配置。有助于开发者快速构建架构,进行开发。帮助开发者专注于需求业务的开发。

(3)Spring Security oAuth2

Spring家族一员,它是Spring所开发的一款安全框架,与Spring家族产品完美兼容。

(4)Spring Cloud Alibaba

Alibaba基于Spring Cloud编程模型的微服务生态。

(5)Apache ShardingSphere Apache ShardingSphere分库分表解决方案。

1.2 前端框架及技术

(1)Vue

Vue端主流框架之一,采用了MVVM,即模型、视图、视图与模型。它拥有独特的语法,以及提供了数据绑定功能,降低了使用者的门槛,适用于中小型项目。

(2)Axios

前端HTTP框架,使开发者方便的调用服务端提供的API。

1.3 数据存储技术

(1)MySQL

关系型数据库,通过与Apache ShardingSphere的配合完成本系统的租户的数据独立。

(2)Redis

Key-Value型数据库,用于本系统部分数据的缓存。

2 需求分析

2.1 系统功能需求描述

(1)游客功能

注册:游客可以进入本系统网站,在登录页面使用手机验证或邮箱验证进行账号注册。

一页通:站内资源搜索功能,过滤各种广告。

(2)普通用户功能

日程中心:一页通所提供的免费的在校日程管理服务。

投稿中心:一页通通过用户的投稿进行网站的收集与分类。

服务大厅:用户可以查看本系统所提供的可租赁的服务并且可以申请成为租户。申请成为租户需要提供相关的可以证明资质的材料,本系统内的租户通常是指高校。

(3)租户下用户功能

除普通用户的功能外,还可享受相关联租户所租赁的服务,具体功能与权限由租户管理。

(4)租户功能

基本功能:包含用户、游客的所有功能。

服务中心:登录管理端,对可租赁服务的续费与订阅。

组织管理:管理租户下由相关联用户组成的组织,及相关角色、权限的管理。

(5)系统管理功能

对本系统的服务、租户、用户进行管理。

2.2 系统功能用例图

普通用户的用例图如图1所示。

图1 普通用户用例图

图2 租户下用户用例图

图3 租户用例图

图4 系统管理员用例图

租户下用户用例图如图2所示。

租户用例图如图3所示。

系统管理用例图如图4所示。

3 系统模块设计

本平台的系统功能如图5所示。

图5 系统总体功能框图

结语:系统的每个模块都按照高内聚,低耦合的思想,使系统拥有高度可扩展性,只需要花费很小的代价就可以对功能进行扩展,很好的应对复杂的校园信息管理。随着互联网的发展,相信未来的校园信息管理系统必将是统一的,高性能,高扩展的,在未来甚至可以实现跨校信息处理。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!