Architectural styles更偏向于理论、逻辑上,关注对系统的分解
System architectures更偏向于实践,实际中
目录
一、体系结构的样式 Architectural styles
2、截取控制流 Intercept the usual flow of control
一、体系结构的样式 Architectural styles
根据组件、组件之间相互的连接方式、组件之间的数据交换以及这些元素如何集成到一个系统中来定义。
- 组件Component:一个模块单元,可以提供良好定义接口,在其环境中是可替换的。
- 链接器Connector:在组件之间传递通信、使组件相互协调和协作。
通讯对于分布式系统的架构的影响非常大,不同的通讯方式导致不同的架构,通讯的花费占据了很大的比例。

架构类型:分层、面向对象
根据组件和连接器的使用,划分成不同体系结构:
1、分层体系结构

分层架构是最常见的,大部分企业级应用都是分层的,比如OSI七层协议。分层最大的好处是能够使系统构造简单,与分层相对应的架构就是面向对象的,两者区别在于分层架构的通讯比较少,因为标准分层架构中,只有在相邻的两层之间才会发生connector,而且connector一般体现为downcall,上层调用下层(下层向上层提供服务),所以如果n层,connector只有n-1层。系统容易构建,分层逻辑清晰。但如果面向对象,n个components可能n*(n-1)个connector。比如javaEE开发的应用也是分层的。
分层架构不仅简单,而且系统灵活性更高,因为下层对上层是黑盒的,很容易一层一层替换。比如TCP/IP可以在有线或者无线网上跑。
分层架构不足:
1. 调错不容易(黑盒是双刃剑,底层系统是黑盒,出错不报错,没有暴露)
2. 性能损失,因为调用耗时,系统分层越多性能损失越大,所以就有跨层调用
分布式系统体系结构详解

文章探讨了ArchitecturalStyles和SystemArchitectures的区别与实践,包括分层架构、基于对象的架构、资源基础架构如RESTful,以及中间件的组织形式,如使用遗留应用建立中间件和控制流拦截。还介绍了集中式、非集中式(P2P)和混合体系结构的特点和应用场景。
最低0.47元/天 解锁文章
2418

被折叠的 条评论
为什么被折叠?



