模块一作业:微信业务架构图与学生管理系统毕设架构设计
微信架构图
“学生管理系统”毕设架构设计
需求
假设今年学校毕业设计要求提升,要求做真正可运行的学生管理系统,学院对毕设的具体要求如下:① 要求可以通过公网域名访问;② 要求至少 3 人合作完成;③ 能够支撑管理 1000 个学生;④ 答辩的时候会根据架构方案来进行打分,不推荐太简单和太复杂的方案。你找了 2 个好朋友一起来做这个项目,你们的基本情况如下:① 大家都会 Java,但是有一个是 PHP 高手;② 大家经济条件一般。作业要求:① 对照面向复杂度架构设计方法论,构思 2 个以上的备选架构方案。② 使用 PPT 来画出你的备选架构方案,并说明方案的优缺点。③ 给出你选择的最终方案以及选择理由。
面向复杂度架构设计
判断复杂度
高性能:1000 个学生,高性能问题暂时不存在
高可用:单校使用,可适当考虑
可扩展:需要适当考虑
其他:数据安全,不要全部丢失;成本要低
备选架构 1:
备选架构 2:
备选架构 3:
架构选型:
考虑到成本,所有应用服务器都只选一台,并预留应用高可用的方案(见备选架构 1)
备选架构 1:域名解析指向学校机房,并进行转发;项目不采用容器化部署;数据库分主备。
复制代码
备选架构 2:域名解析指向学校机房,并进行转发;项目采用微服务架构、容器化部署;数据库分主备
复制代码
备选架构 3:云端部署;项目采用微服务架构、容器化部署;数据库分主备。
复制代码
综上,选择备选架构 2。
版权声明: 本文为 InfoQ 作者【dean】的原创文章。
原文链接:【http://xie.infoq.cn/article/be4d4ab25281287c17e7008ab】。文章转载请联系作者。
评论