架构实战营毕业总结
为期四个月的架构实战营结束了,意犹未尽。
一直想往架构师方面发展,自己也看了不少架构的文章和书籍,总觉得缺点什么。这几个月下来,我明白了如何系统思考架构,也明白了方法论的重要性。
训练营主要讲述了面向复杂度的架构设计方法论,通过架构设计环的决策步骤,一步步降低了系统的复杂度,每一次复杂度问题都可能有多种方案,架构师要从中选取最符合当前需求的方案。决策过程中,架构师要掌握:三个核心能力(判断、拆解、取舍),三个关键思维(确定性思维、创造性思维、系统性思维)。在架构设计的过程中,前期判断系统的复杂度,中期拆解复杂度做出备选方案,后期通过取舍形成最终的架构方案(4R)。4R 架构:Rank、Role、Relation、Rule。最后形成的架构方案确定了架构的 4R 元素。
从程序员转的架构师,更应该注意架构前期与利益干系人进行沟通的问题,要和多个干系人沟通谈判决策,这是开发工作少接触的。
架构复杂度模型包含了业务复杂度和质量复杂度两个维度。解决业务复杂度的方法有微服务和 DDD。质量复杂度又分为:高可用、高性能、可扩展等,方法包含:分库分表、缓存、集群、分片、异地多活等。设计高可用存储和高可用计算时,都要根据用户量预估和用户行为建模,估算对应的性能需求。
形成总体架构方案后,最好还要运用 FMEA,检查校验该方案。假设系统某些组件或者模块出现故障(Failure)和故障发生的方式、可能性(Mode),预测故障发生后业务功能具体会受到什么影响(Effect),分析系统的可能反应,以及如何改进(Analysis)。
有幸参与此次实战营。
评论