架构实战营 - 模块一作业
一、微信的业务架构图
微信的业务架构图如下:
二、“学生管理系统”毕设架构设计
2.1 学生管理系统需求
需求背景:学校毕业设计,要求做真正可运行的学生管理系统,学院对毕设的具体要求如下:
要求可以通过公网域名的访问;
要求至少 3 人合作完成;
能够支撑管理 1000 名学生;
答辩的时候会根据架构方案来进行打分,不推荐太简单和太复杂的方案;
团队情况:
大家都会 Java,但是有一个是 PHP 高手;
大家经济情况一般;
系统需求:系统主要应用于学校信息管理,总体任务是实现学生信息管理的系统化、规范化和自动化,其主要任务是学生管理,课程管理,考试管理,权限管理。
业务架构图:
2.2 学生管理系统架构设计
2.2.1 复杂度分析
高性能:系统只需支撑管理 1000 名学生,不需要考虑高性能;
高可用:基于毕设的背景,本不需要太高的可用性。但考虑答辩,将高可用性作为本系统的亮点,保障数据不要全部丢失;
高扩展:系统用作毕业设计,只需满足毕设的需求即可,不需要考虑后续的可扩展性;
成本、安全:基本毕设的背景,不需要过多考虑安全性。由于大家经济情况一般,需要尽可能的控制成本;
2.2.2 备选方案
备选方案 I:
备选方案 II:
备选方案 III:
2.2.3 方案取舍
基于架构设计三原则,最终选择方案 II。
方案 I:过于简单,没有亮点;
方案 III:违背简单原则;
版权声明: 本文为 InfoQ 作者【Sun】的原创文章。
原文链接:【http://xie.infoq.cn/article/6606deb182d005c5617994e83】。文章转载请联系作者。
评论