写点什么

学生管理系统架构

用户头像
Fleng
关注
发布于: 2021 年 04 月 06 日

假设今年学校毕业设计要求提升,要求做真正可运行的学生管理系统,学院对毕设的具体要求如下:

1)要求可以通过公网域名访问;

2)要求至少 3 人合作完成;

3)能够支撑管理 1000 个学生;

4)答辩的时候会根据架构方案来进行打分,不推荐太简单和太复杂的方案

你找了 2 个好朋友一起来做这个项目,你们的基本情况如下:

1)大家都会 Java,但是有一个是 PHP 高手

2)大家经济条件一般


要求:

1)对照面向复杂度架构设计方法论,构思 2 个以上的备选架构方案。

2)画出你的备选架构方案,并说明方案的优缺点。

3)给出你选择的最终方案以及选择理由。


方案一:

优点:

1.MySQL 主备集群,数据高可用。

2.Web 服务器集群确保服务具有较高的可用性。

3.Nginx 充当负载均衡并绑定域名进行请求转发。

4.对团队技术要求较低。

5.部署、维护简单。

缺点:

1.业务全部集中在同一个 Web 应用中,若某个模块异常可能拖垮整个服务。



方案二:

优点:

1.MySQL 主备集群,数据高可用。

2.按业务系统拆分,业务间低耦合,水平扩展简单。

3.Nginx 充当负载均衡并绑定域名进行请求转发。


缺点:

1.业务系统拆分较多,开发周期较长,团队人手可能不够。

2.需要多台 Web 服务器,成本较高。



综上,最终选择方案一,理由如下:

合适原则

1)对团队技术水平要求较低,符合团队的技术水平和积累。

2)架构简单,开发周期短,开发成本低。

3)系统部署、维护简单。


简单原则

1)不拆分系统,开发、部署、维护简单。

2)无需进行业务分配


演化原则

1)后续演化基本上为业务需求变更或拓展,对架构影响不大,若后期需要进行服务拆分等,再进行拆分即可。

2)用户体量不会发生太大变化,对系统的高可用、高性能、可扩展性要求不会有太高要求。

用户头像

Fleng

关注

还未添加个人签名 2018.09.15 加入

还未添加个人简介

评论

发布
暂无评论
学生管理系统架构