架构三原则学习心得
微信的业务架构
学生管理系统的架构方案设计
架构方案 1
优点:
所有的服务都部署在同一台服务器上,易于部署,易于维护,易于扩展
使用开源的 mysql 存储方案,符合团队的技术优势(java 和 php)
缺点:
同一个部署方案需要在多台服务器部署多次
架构方案 2
优点:
将业务分拆多个部分,分别部署,分别提供服务,可针对单个服务的故障进行处理,易于维护
新增服务可以随时进行部署,不会影响其他的服务
缺点:
业务分拆的越细,可能需要的服务器越多,随之成本也越高
架构方案 3
优缺点基本与方案 1 一致,存储更换为 mongodb,便于查询结构化的数据
综合评估方案
根据复杂度架构设计原则,即架构设计三原则: 合适原则、简单原则、演化原则,综合最合适的方案来看,选择方案 1 最好。
合适原则
符合团队的目前的技术水平以及人员组成(团队只有三个人,都会 Java,另有一个会 PHP,快速开发就好),开发成本应当尽量低(成员的经济条件都一般),运维成本尽可能小(只有三个人,意味着人数不多)
简单原则
不需要进行微服务,不用部署复杂的微服务系统
不拆分系统,所有的服务都在一台服务器,一体化部署
学生数量就只有 1000 个,不需要考虑性能的要求
演化原则
一次性交付,学生数量有限(1000 个学生),系统架构够用多年都不怎么变化,不需要考虑后期的演化
评论