架构设计流程:评估和选择备选方案

笔记

  • “360 度环评”!具体的操作方式为:列出我们需要关注的质量属性点,然后分别从这些质量属性的维度去评估每个方案,再综合挑选适合当时情况的最优方案。

  • 常见的方案质量属性点有:性能、可用性、硬件成本、项目投入、复杂度、安全性、可扩展性等。在评估这些质量属性时,需要遵循架构设计原则 1“合适原则”和原则 2“简单原则”,避免贪大求全,基本上某个质量属性能够满足一定时期内业务发展就可以了。

  • 如果每次做方案都考虑这种小概率事件,我们的方案会出现过度设计,导致投入浪费。

  • 如果某个质量属性评估和业务发展有关系(例如,性能、硬件成本等),需要评估未来业务发展的规模时,一种简单的方式是将当前的业务规模乘以 2 ~4 即可,如果现在的基数较低,可以乘以 4;如果现在基数较高,可以乘以 2。

  • 量变会引起质变,具体哪些地方质变,是很难提前很长时间能预判到的。

  • 正确的做法是按优先级选择,即架构师综合当前的业务发展情况、团队人员规模和技能、业务发展预测等因素,将质量属性按照优先级排序,首先挑选满足第一优先级的,如果方案都满足,那就再看第二优先级。

理解与思考

  1. 难于选择是因为备选项的优缺点不能量化。我们只能凭感觉去选择。而感觉经常是不可靠的。
  2. 从质量属性上去评估备选方案,避免考虑不周全,遗漏的情况。一个方案的好坏优略,从这些方面也能或多或少的体现出来。
  3. 按优先级来排序。先解决当下最关注的质量问题。

课后思考题

RocketMQ 和 Kafka 有什么区别,阿里为何选择了自己开发 RocketMQ?

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容