写点什么

架构实战营 - 模块 1- 作业

发布于: 2021 年 04 月 05 日

作业 1:画出微信的业务架构图


微信业务架构图


作业 2:

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

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

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

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

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

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

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

2)大家经济条件一般

作业要求:

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

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

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


需求分析:

1,学生管理系统可运行。

2,可以通过公网访问。

3,至少 3 个人合作。

4,能够支撑管理 1000 个学生。

5,目前有 3 个人,都会 java,但一个人是 PHP 高手。

6,经济条件一般。


根据需求判断

1,经济条件一般代表不可能购买大量服务器以及域名等,故推荐使用阿里云服务器,学生还有优惠,故解决了可运行,公网访问,经济条件一般这三个需求点。

2,团队一共 3 个人,满足至少 3 个人合作这一个需求点。

3,团队中 3 个人都会 java,一个人是 php 高手,那么考虑团队协作问题,技术栈选型 java。

4,能够支撑管理 1000 个学生。这个点其实有一点模糊,因为是要考虑是要支持 1000 个并发吗?还是只是单纯 1000 个学生能使用?


现提出备选方案:


方案1


方案2


方案3


方案4


方案5


最终方案选择:

1,如果仅是满足管理 1000 个学生,没有性能上的要求

选择方案一,理由如下:

1,实现简单、维护工作量小、服务器成本低。

2,需求对应用高可用没有要求,应用服务可以单点部署。

3,需求对高性能没有要求,满足管理 1000 个学生的需求。

4,数据库主备满足了数据的高可用。


2,如果是满足管理 1000 个学生,有性能上的要求

选择方案 5,理由如下:

1,根据需求分析,学生管理系统的瓶颈可能是在抢课时出现并发,系统无法支撑,故可以把课程管理系统独立出来。

2,方案 5 采用了应用集群与数据库主备,同时满足了应用高可用与数据高可用。


用户头像

还未添加个人签名 2020.09.27 加入

还未添加个人简介

评论

发布
暂无评论
架构实战营 - 模块 1- 作业