# 架构实战营 - 模块 1- 作业
微信业务架构
学生管理系统毕设架构设计
概述
学校毕业设计要求做可运行的学生管理系统,要求如下:1. 可以通过公网域名访问;2. 至少 3 人合作完成;3. 能够支撑管理 1000 个学生;4. 根据架构方案进行打分,不推荐太简单或太复杂的方案。
复杂度的分析
高性能
系统用户数为 1000 个学生,数据量很小,可以暂不考虑高性能。
高可用
系统的数据量较小,可以暂不考虑高可用,但是数据一旦丢失,会对系统产生很大的影响,数据库服务器需要解决单点问题,每天定时全量的备份一下数据即可。
可扩展
系统的数据增量有限,日后可能会有新的需求,目前暂不考虑可扩展性。
成本
学校毕设项目采用云服务器做为系统的服务器,成本很小。
备选架构
方案一
方案二
方案选择
方案一选择了 Mysql 数据库的主备,确保了数据不会丢失很多,但是也会有数据丢失的情况,方案二解决了数据同步会有丢失数据的问题。方案一选择了一台 Nginx 做分发,在满足业务的情况下,少部署一台 Nginx,会有单点的问题隐患。方案二解决了 Nginx 的单点问题。综上所述,方案二更好。
评论