架构实战 模块一作业

1. 画出微信的业务架构图

2. “学生管理系统”毕设架构设计
2.1. 方案一

2.2. 方案二

2.3. 方案结论
选择方案二,理由如下:
首先,两个方案,在架构设计三原则(合适、简单、演进)上,都可以满足
那么,两个方案最主要的差别,是在数据库技术的选型上,之所以选用 MongoDB,理由如下:
MongoDB 的数据结构更有利于开发
高可用部署上,MongoDB 的 3 节点副本集较之 MySQL 的主从方案,可用性更高,后续运维的成本也会低一些
方案二,较之方案一不足的地方,就是机器稍显多了一些,但对于 1000 人的管理系统,其性能会更好,且后续若访问压力增大,可以调整为读写分离的方式,比之 MySQL 的方式,更为容易
对于这道题,疑惑的地方在于 2 个 Java 和一个 PHP 高手,由于不是很精通编程,所以,这个点没有太多考虑
评论