写点什么

架构实战营 模块 1 作业

用户头像
唐江
关注
发布于: 2021 年 04 月 08 日

1. 画出微信的业务架构图



2. “学生管理系统”毕设架构设计

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

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

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

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

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

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

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

  2. 大家经济条件一般

作业要求:

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

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

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



1、采用 Java 和php技术,分别用 Java 做其中2个模块,Php做另一个模块,

2、采用2台nginx服务器做负载,以防单点故障问题


优点:充分发挥编程优势,保证效率和程序性能

缺点:部署复杂、成本高、需要维护同时 PHP 和 JAVA 两种技术



1、采用单体应用多个模块

2、采用 JAVA 语言

3、应用和数据库部署在一台服务器,数据库相互备份,保证数据不丢失

4、应用部署简单,维护简单

 

优点:单体应用、高可用、高性能、部署简单、维护简单

缺点:应用和数据库在一起风险大点


架构复杂度判断:

高可用:不需要服务高可用,但是需要数据高可用

高性能:不需要考虑高性能

可扩展:业务变化程度不大,不用考虑

成本、安全:都是经济一般的学生,需要考虑

方案取舍:

    团队技术水平:虽然有一个 PHP 高手,但是其他人都不会 PHP,因此采用都会的 JAVA,因此方案2更合适

    方案成本: 服务器用的越少越好,方案2合适

    开发周期: 多个模块单体应用,开发便捷,方便管理,方案1、2都合适

    对方认可度: 老板说方案不能太复杂,因此方案2更适合

最终选择:方案 2


用户头像

唐江

关注

还未添加个人签名 2020.02.19 加入

还未添加个人简介

评论

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