写点什么

极客时间架构训练营模块一作业

作者:Le.e
  • 2022 年 9 月 26 日
    北京
  • 本文字数:742 字

    阅读完需:约 2 分钟

极客时间架构训练营模块一作业

微信的业务架构图

要画好微信的业务架构图,首先要理解什么是业务架构?以及除了业务架构还有没有其他的架构?

翻阅了相关的资料之后,解答了上面的两个疑问:

  1. 架构主要分为:业务架构、应用架构、技术架构、代码架构和部署架构

  2. 业务架构是战略,应用架构是技术,技术架构是装备

  3. 业务架构包含业务规划,业务模块、业务流程,对整个系统的业务进行拆分,对领域模型进行设计,把现实的业务转化成抽象对象

微信业务架构图(简)

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

需求

  1. 学生管理系统可以真正运行

  2. 系统可以通过公网域名访问

  3. 至少 3 人合作完成

  4. 能够支撑管理 1000 个学生

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

背景

  1. 开发人员都会 java,但是有一个是 php 高手

  2. 大家经济条件一般

复杂度分析

高性能

能够支撑管理 1000 个学生,所以高性能 pass 掉

高可用

  1. 学生管理系统是辅助系统,短时间挂掉的话不会对学校的日常运行造成过大的影响

  2. 学生的数据可以丢失几条,甚至几十条,但是如果一个学校的学生数据全部都是的话,是不可以接受的

综上所述,服务高可用此阶段可以不用考虑,此阶段需要考虑的是存储高可用

可扩展

  1. 由于是只管理本校的学生信息,所以不会上云

  2. 该版本的业务也不会太过复杂

综上所述,根据简单原则和严禁原则,可扩展并不是该阶段需要考虑的复杂度来源之一

成本

  1. 人力成本

  2. 服务运行成本

安全

  1. 需要考虑功能安全,例如隐私数据加密、sql 注入、跨站脚本攻击等

备选架构

备选架构一


备选架构二

取舍

选择备选架构二

合适原则

  1. 符合团队技术水平(都会 java)

  2. 开发和运维成本低,不需要拆分为多个服务,开发一套服务代码即可

简单原则

  1. 不进行服务拆分,部署和维护简单

  2. 没有用到微服务,所以也就不需要整套的微服务基础设施

演化原则

  1. 学校的学生数量基本不会发生太大的变化,系统架构可以使用多年

相关参考

阐述架构的分类:谈谈架构的本质和架构分类 (qq.com)

发布于: 刚刚阅读数: 4
用户头像

Le.e

关注

还未添加个人签名 2021.07.27 加入

还未添加个人简介

评论

发布
暂无评论
极客时间架构训练营模块一作业_架构_Le.e_InfoQ写作社区