架构师启示录:知识模型、落地方法与思维模式_灵犀_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. 第1章 架构认知框架概述
  5. 第二部分 架构知识模型
  6. 第2章 信息交换
  7. 第3章 架构编排
  8. 第4章 架构演进
  9. 第三部分 架构落地方法与架构思维模式
  10. 第5章 预备知识
  11. 第6章 需求分析
  12. 第7章 架构设计
  13. 第8章 系统实现
  14. 第9章 系统维护
  15. 第10章 底层思维模式