微信业务架构图 & 学生管理系统
一、微信业务架构设计图
二、学生管理系统架构设计
需求:
假设今年学校毕业设计要求提升,要求做真正可运行的学生管理系统,学院对毕设的具体要求如下:
1 要求可以通过公网域名访问;
2 要求至少 3 人合作完成;
3 能够支撑管理 1000 个学生;
4 答辩的时候会根据架构方案来进行打分,不推荐太简单和太复杂的方案。
你找了 2 个好朋友一起来做这个项目,你们的基本情况如下:
1 大家都会 Java,但是有一个是 PHP 高手;
2 大家经济条件一般。
方案一:
采用 java web 应用服务单体架构;dns 做负载均衡 ,数据库做容灾备份
原因:1、以合适为最主要架构目标,系统不需要考虑高可用高性能等问题,学生管理系统最重要的数据层;而考虑三个人都是会 java,用 java 开发作为开发语言更合适
2、简单原则 该系统本身也不需要保证高可用,业务也相对较简单,所以采用单体应用架构
3、演变原则 学生管理系统并不需要灰度发布,热部署等策略,可以允许短暂的停机升级;所以不考虑做高可用
方案二:
将系统粗略划分为三块,权限管理,后台审核发布讯息等操作人员访问系统,学生访问的 portal 系统
使用 nginx 做反向代理和负载均衡
原因:1、该系统为学校内部系统,业务不会太复杂以及需求变化不会太多,考虑尽量简单
2、因为三人中有个 php 高手,实现难度较大的子系统可以由 php 语言进行开发
3、系统已经具备继续拆分的能力,方便扩展
结合项目需求,成本,人员配比选择综合考虑选择方案一
评论