架构学习日常记录
作业
1. 画出微信的业务架构图。
作业 2:首先我们基于业务需求分析,第一点需要通过公网域名访问,这里我们可以通过 dns 解析定制化的域名,将域名放在 NGINX 上做动态路由转发和后端服务负载均衡;第二点要支撑 1000 名学生在线使用,该场景并发度不高,考虑需求方资源配置不高,我们可以先使用单实例;第三点因为是学生管理系统,要求数据可靠性较高不能出现数据丢失现象,这里我们可以选择 mysql 主从复制集群,通过 binlog 做每日数据备份。下面是我的几种架构设计方案。
方案一
优点:简单,可以充分发挥团队 php 高手技术
缺点:过于简单,php 也用于做业务,有一定的性能问题,不能体现技术难度
方案二
优点:能够体现技术难度
缺点:团队三人,一个 php 高手,两个 java 同时开发一个业务服务,业务服务具备一定复杂度,可以体现技术难度
方案三
优点:较复杂,能够体现技术性
缺点:一个 php 高手,两个 java,php 脚本和两个服务需要开发,有一定挑战,时间上要考虑下
选择方案二,合适原则,符合团队技术栈,又能体现一定的技术难度
评论