架构实战营模块 1 作业
1. 微信业务架构图
2.学生管理系统
一个支撑 1000 人的毕业设计项目并不需要高可用高性能可扩展的架构。
另外“大家经济条件一般”, 使用的服务器资源应该越少越好。
因此我的设计的前提是:1000 人的系统一台业务服务器就能支撑,并不需要可扩展。
方案 1:
业务服务器(一台):配置公网 ip,通过阿里云的 dns 服务将域名解析到该 ip 上(如果一个毕业设计项目还要另外再搞一台 dns 服务器的话,太奢侈了)。
nginx 和各个子系统都运行在该服务器上,多核+高内存(应付 1000 人的并发也足够)
在这里个 nginx 服务并不起负载均衡的作用(因为只有一台业务服务器嘛),它的作用只是个 gate。
存储服务器(主备各一台):负责存储
对于各个子系统:
因为大家都熟悉 java,按照子系统分工(图中只画了两个子系统,但可能不止两个子系统)。
方案 2:
与方案 1 的区别:
“php 高手”独立搞定所有的 子系统的前端展示页面(页面中调用 java 开发同学的后端 api)
熟悉 java 的同学用 java 来开发所有的子系统的数据访问/存储的 API.
这里 php 同学可以自由选择各种框架来实现业务层。
java 同学聚焦数据层即可。
每个成员充分发挥各自的长处。
显然方案 2 更优.
评论