架构师启示录:知识模型、落地方法与思维模式_灵犀_AZW3_MOBI_EPUB_PDF_电子书(无页码)_灵犀
内容节选
CHAPTER 3第3章架构编排 架构编排涵盖了业务架构、应用架构、数据架构、技术架构的设计,以及非功能性需求设计,涵盖了诸多架构技术与方法。之所以将这么多知识统一在架构编排的概念下,主要是考虑普适性,一旦掌握了架构编排的内核,就能够用类似的方法来处理所有相关领域问题。 本章将深入探讨架构编排的内核,并从编排的角度分析2.2节提及的3种系统模型的元素类型及其关系。最后,以高并发和高可用场景为例,介绍如何使用架构编排的方式分析具体的场景设计问题。 3.1 社会组织的内核 “编排”的含义非常类似“组织”的动词含义。因此,在深入探讨架构编排之前,我们仍以社会组织进行类比。 人类早在狩猎文明时代,就懂得了组织的重要性。只是当时的组织方式相对简单,主要是一群人合作打猎,共同抵挡外来动物的攻击等。但也恰恰是这种简单而有效的组织方式,让人类开始脱颖而出,站在了大自然生态链的顶端。 实际上,我们现在已经知道很多动物的群体内部也具备类似的组织方式,例如蚁群、蜂群、大猩猩群体等,但是它们为什么没有发展出类似人类的群体社会特性呢? 答案就在于组织的规模大小。不论蚁群、蜂群还是大猩猩群体,它们的组织多限于一个有血缘关系的家族内部,无法扩展到陌生人层面。而人类则具备了更高级别的社会结构,从而可以实现更大规模的组织形式,这一点从人类跨入农业时代开始就已经变得非常明显。一个国家能有效地运转起来,这一切都得益于有效的大规模组织工作。 然而,不论时代如何发生变化,但社会的组织工作内核一直没有改变,可以用下面的公式表示: 社会组织=社会实体+社会规则 其中,社会中组织的形态有很多种,比如国家、企业、家庭等,根据组织形态不同,组成的实体和规则也不同。例如,在国家这个社会组织中,实体是社会成员,规则是法律;而企业这类社会组织,实体包括部门、员工、机器等,规则是公司法等;以家庭为单位的组织,家庭成员作为实体,并以亲情关系作为规则。 接下来将公式中的3个部分拆开,分别讨论随着时代的演进,它们发生变化的情况。 1. 社会组织 在组织形态方面,狩猎文明时代主要以家庭和部落为单位进行协作;而在农业文明时代,又出现了国家、城市等各种新型组织形态。到了工业和信息化时代,则涌现出一系列工厂、协会等。可见,随着社会复杂性的增加,组织的形态也越来越丰富。 2. 社会实体 实体隶属于不同的组织形态。下面从实体类型和实体规模两个方面来简要介绍一下社会实体。 (1)实体类型 随着时代的发展,尤其是科学技术的发展,在大部分组织形态中,实体已不再限于人类自身,以企业这个组织形态为例,大规模生产流水线、计算机终端、软件系统、数字人等已慢慢成为企业的重要实体。 (2)实体规模 在大多数组织形态中,实体规模已不受数量的限制。例如,在互联网连接和全球化市场经济的作用下,几乎可将世界上所有人都组织起来。 3. 社会规则 简单来说,规则可将组织中的实体有序联结起来,比如国家法律。这里不再讨论具体层面的规则,而是讨论一些在不同组织形态中通用的规则。 (1)时间规则 时间规则是指根据时间因素将不同实体有序地组织起来。比如,在工厂的生产流水线中,工人们需要按照一定的时间先后顺序进行操作;在学校里,上课铃声可以将学生们组织到一起学习。此外,不同实体之间的因果关系也属于时间规则范畴。 (2)空间规则 空间规则是指根据空间因素将不同实体有序地组织起来,这种空间因素可能包括空间中的位置、层次等。例如,在空间位置方面,随着火车、邮寄服务、互联网等通信工具的陆续出现,各类组织的范围已经扩展到全球,甚至已经向宇宙延伸。又如,在空间层次方面,通常一个复杂的组织形态内部都有分层。例如,企业组织内部有岗位分层、学校组织内也有高低年级分层等。 3.2 架构编排的内核 架构的目标是将复杂系统进行落地实现,因此编排的内涵也非常广泛。本节将架构编排使用以下公式描述: 架构编排=架构元素(或实体)+架构规则 接下来将公式中的3个部分拆开,分别讨论随着架构的演进,它们发生变化的情况。 1. 架构编排 在本书中,架构编排的形式指的是某一类别的架构知识,例如微服务、DDD、PaaS等均属于某一类架构形式。而且随着时间的推移和系统复杂度的提高,在架构的许多领域,其形态也变得越来越多样化。下面来看一些比较典型的例子。在语言形态方面,我们经历了面向过程、面向对象以及面向函数等不同形态;在服务形态方面,则经历了由单体到SOA,再到微服务的转变;在平台方面,接连出现了IaaS、PaaS、SaaS和中台等不同类型的平台;在模型方面,陆续涌现出DFD、用例图、类图、时序图,再到业务架构中的价值链、价值流、业务流程、服务蓝图等;在架构方法方面,从最初的RUP到业务架构、应用架构、数据架构和技术架构,以及DDD、TOGAF等;在中间件方面,陆续涌现出数据库中间件、消......
- 信息
- 前言
- 第一部分 架构认知框架
- 第1章 架构认知框架概述
- 第二部分 架构知识模型
- 第2章 信息交换
- 第3章 架构编排
- 第4章 架构演进
- 第三部分 架构落地方法与架构思维模式
- 第5章 预备知识
- 第6章 需求分析
- 第7章 架构设计
- 第8章 系统实现
- 第9章 系统维护
- 第10章 底层思维模式