架构实战营 模块一:课后作业
一、微信的业务架构图
二、“学生管理系统”毕设架构设计
题目描述
假设今年学校毕业设计要求提升,要求做真正可运行的学生管理系统,学院对毕设的具体要求如下:
要求可以通过公网域名访问;
要求至少 3 人合作完成;
能够支撑管理 1000 个学生;
答辩的时候会根据架构方案来进行打分,不推荐太简单和太复杂的方案
你找了 2 个好朋友一起来做这个项目,你们的基本情况如下:
大家都会 Java,但是有一个是 PHP 高手
大家经济条件一般
1.备选架构一
(1)架构图
(2)优缺点分析
优点:部署云服务器,成本低;纯 php 开发,快速开发,性能高效;
缺点:单系统部署,降低高可用性;系统代码集成度高,可扩展度低;
2.备选架构二
(1)架构图
业务中台:使用 php 开发,通过调用各个子系统,拼接数据返回。
子系统:使用 java 开发,通过调用数据库,完成数据的 CRUD 操作。
DB:使用 mysql 对数据进行永久性存储,redis 对热点数据进行缓存。
(2)优缺点分析:
优点:通过业务中台,建立统一入口,方便对外管理及扩展;子系统拆分,降低系统代码复杂度,提升可扩展性,同时便于实现系统横向扩展;
缺点:增加技术人员投入成本;加大系统复杂度;开发周期长;
3.最终方案及理由
选择备选架构二,原因如下:
(1)通过适当提升系统复杂度,获得认可。
(2)满足多人同时开发。
(3)单系统内部署多个子系统,不会提高硬件成本。
(4)同时单一入口管理及多子系统的部署方式,便于系统横向扩展及功能
版权声明: 本文为 InfoQ 作者【👈】的原创文章。
原文链接:【http://xie.infoq.cn/article/f7b3e09984dae3270522957ee】。未经作者许可,禁止转载。
评论