写点什么

架构实战营 模块一作业

作者:Gor
  • 2022 年 5 月 18 日
  • 本文字数:601 字

    阅读完需:约 2 分钟

微信业务架构图

学生管理系统架构设计

复杂度分析

高性能:支撑管理 1000 个用户这样的量级通常单机性能就足以支撑。

高可用:学生管理系统主要面向学校内部,对可用度要求不高,但也不能长时间或频繁发生故障。

可扩展:无须考虑持久扩展演进。

其他:对数据安全性不高,但考虑到录入数据的工作量,最好有一台备机。另外,项目成员经济条件有限,因此不能使用太复杂、成本太高的方案。

备选方案一(本地架构)

项目使用 java 为开发语言,主要的考虑是大家都会 Java,但并不都懂 PHP,可以保证开发效率。

由于是学校内部系统,可以重用学校的基础设施,一般学校都有自己的域名,可以共用域名,然后通过内部的负载均衡,如 nginx,根据路径配置分发规则。

优点:

重用学校的基础设施,可以降低成本,同时对开发人员本身的服务器运维能力要求也不高,因为学校有专门的运维人员。

缺点:

学校对服务器权限有要求,开发人员可能无法自由地接触服务器,维护起来不太方便。另外,学校不一定有专门的 dba,对于开发人员来说,会有数据库的主从备份设计及维护的要求。


备选方案二(云架构)

项目使用 java 为开发语言。

购买市场上的云产品,使用现在主流的 K8S 以及容器技术。

优点:

由于所有的的技术基本都是云原生态的,可以减少了运维的成本,比如高可用,弹性伸缩,备份恢复等。预算的角度应该也不会很高,前期一个 K8S 的集群,两个 node 再加上云原生态的主备数据库系统即可。

缺点:

技术栈比较新,可能需要一定的学习时间。


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

Gor

关注

还未添加个人签名 2020.05.05 加入

还未添加个人简介

评论

发布
暂无评论
架构实战营 模块一作业_Gor_InfoQ写作社区