知识卡片
软件架构三阶段演进与开发模式的绑定关系
内容
软件架构模式的演变和设备、技术的发展正相关,大体经历三个阶段:单机架构阶段通常采用面向过程的设计方法,系统只有客户端UI层和数据库两层(C/S架构),围绕数据库驱动设计,开发总是从设计表结构和字段开始;集中式架构阶段通常采用面向对象的设计方法,典型是业务接入层、业务逻辑层、数据库层的经典三层架构,传统单体应用大多采用这种模式,容易随功能堆积变得臃肿,扩展性和弹性伸缩能力差;分布式微服务架构阶段则通过服务解耦解决了集中式单体扩展性不足的问题,更适合云计算环境下的部署运营。这三个阶段不只是技术选型的变化,每个阶段还天然绑定着与之匹配的设计方法(面向过程/面向对象/服务化解耦)和开发流程模式(如单机、集中式时代普遍采用瀑布开发),这说明架构模式的选择从来不是孤立的技术决策,而是与当时可用的设备能力、主流设计范式、组织协作方式共同演化的结果。
参考来源
- 位置:《中台架构与实现:基于DDD和微服务》第3章《微服务设计为什么要选择DDD》"3.1 软件架构的演进史"(源文件:_epub-src/OEBPS/Text/chapter2-3-1.xhtml)
- 结论依据:原文说明"软件的架构模式大体来说经历了从单机、集中式到分布式微服务架构三个阶段的演进……第一阶段是单机架构,这个阶段通常采用面向过程的设计方法……第二阶段是集中式架构,这个阶段通常采用面向对象的设计方法……第三阶段是分布式微服务架构,随着微服务架构理念的提出,单体集中式架构正在向分布式微服务架构演进",直接支撑本卡片结论。
- 原始内容:第一阶段是单机架构,这个阶段通常采用面向过程的设计方法,系统包括客户端UI层和数据库两层……第二阶段是集中式架构,这个阶段通常采用面向对象的设计方法。一般采用经典的三层架构……第三阶段是分布式微服务架构,随着微服务架构理念的提出,单体集中式架构正在向分布式微服务架构演进。