写点什么

架构实战营 - 模块三作业: 架构文档

用户头像
Julian Chu
关注
发布于: 4 小时前

前言


本文為學生管理系統詳細架構設計文檔, 用于系統後續的開發測試和運維

词汇表


MySQL: (略)

Nginx

Spring boot

MVC

RBAC


1. 业务背景

学校规模不断扩大,学生数量增加, 带来明显的管理问题, 目前人工学生管理效率低下仅花费大量的教师资源, 处理效率十分低下, 基於以上問題, 需要引入學生管理系統, 本系统主要是应用于学生各类信息的管理,总体任务是实现学生信息关系的系统化、规范化、自动化, 目標為提高学生管理的管理水平,优化资源,降低管理成本


2. 约束和限制

  1. 必须在 2021.12.30 前完成

  2. 成本不能超过 100 万

  3. 相容于目前纸本资料作业程序

  4. 可以应对 3000 人的管理资料

  5. 学生与老师不同权限

  6. 使用 java 与主流框架开發


3. 总体架构


3.1 架构分析

3.1.1 高可用

数据高可用:数据不要全部丢失, 採用 MySQL 主从架构

3.1.2 高性能

使用者估计 3000 人, peak qps 不超过 1000, 採用 MySQL 即可

3.1.3 可擴展

暫無需求, 可增加子模块应对

3.2 总体架构


4. 详细设计

4.1 核心功能

  • 学生管理

  • 课程管理(考试管理併入)

  • 权限管理: 使用 RBAC 設計

4.2 关键设计

資料存储可靠性

消息存储在 MySQL 中,有一主一备两台 MySQL 服务器,MySQL 服务器之间复制消息以保证存储高可用。

4.3 设计规范

  • Spring Boot + Netty 开发

  • MVC Web

  • MySQL 使用 Innodb 存储引擎

  • 传递数据采用 Restful API + JSON

5. 质量设计

5.1 後台

一期结束前确认需求

5.2 成本

服务器 x

DB x 2

开發人力

6. 演进规划

6.1 一期

  • 权限管理

  • 学生管理(文件上传/下载除外)

  • 课程管理

6.2 二期

  • 考試管理

  • 学生管理(文件上传/下载)

  • 管理後台


用户头像

Julian Chu

关注

还未添加个人签名 2016.08.16 加入

还未添加个人简介

评论

发布
暂无评论
架构实战营 - 模块三作业: 架构文档