为什么构建架构工作台.docx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《为什么构建架构工作台.docx》由用户(阳光照进你心里)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 为什么 构建 架构 工作台
- 资源描述:
-
1、为什么构建架构工作台?在ArchGuard中,我们想治理的是架构的三种形态:设计态、开发态和运行态。对应于:设计新的企业(应用)架构。诸如于描述和设计系统的当前架构。理解和管控系统的现状。诸如于通过可视化的手段展示系统的现状、以规则来管理系统。观测系统架构的运行。同样,对于诸多中大型组织师的架构相关的部门来说,他们同样存在上述的这些问题。并且,我相信他们也面临着同我们构建ArchGuard时一样的困境:架构是多维的。包含技术、数据、安全、运维与系统等缺乏统一的架构语言。用于沟通的人类语言,诸如于什么是组件?系统的架构千奇百怪。架构风格或模式差异,如微服务架构、插件化架构等。缺乏业务上下文。作为
2、一个外部架构师,帮助治理时缺乏一些上下文。细节是魔鬼。架构的世界丰富多彩,没有办法展现出来,比如一个小小的接口,可能会反转我们对于理解的假设。我们(ArchGuard团队)目前的架构能力有限(这个不会写出来的)资深架构师太少。所以,在实现这样一个标准化的架构模式系统之前,不如尝试构建一个更灵活的形式:架构工作台。它可以帮助我们更好地探索系统,也更符合我们的初期体验。什么是架构工作台对于工作台这一概念来说,作为一个活跃的DSL创造者,我比较熟悉的是MartinFowler在领域特定语言中对于语言工作台的定义:语言工作台是一个环境,其设计初衷就是帮助人们构建新的DSL,以及有效地运用这些DSL所需
3、的高质量工具。也因此在定义上,我们参考了老马的定义,并借鉴了现代化的工作台理念,主要有:RStudio的代码文档化、Jupyter的交互性分析。所以,我们的定义是:架构工作台是一个环境,其设计初衷用于帮助人们设计架构、演进架构、观测架构,并有效地运用架构所需要的高质量工具,如交互式的架构开发和分析。代码文档化,用于帮助我们更好地管理架构代码,将它融入软件开发生命周期里,如架构文档、用户故事、持续集成等。而交互性分析,则是用于帮助我们有效减少定制的代码,进而演变为提供的是API接口,与其定制化的代码。对于架构工作台来说,它应用包含了以下一些核心功能与特性:设计架构、演进架构与观测架构。构建架构的
4、数字挛生说明性编程与显式设计在这些特性中,我们认为构建架构的数字事生是这个工作台最应该被重视的部分,而基础块则是:设计架构、演进架构与观测架构。基础:设计架构、演进架构与观测架构在治理架构时,我们通常会关注于如何设计,如何演进,以及观测架构在运行时的状态。设计架构。这样的功能其并不能理解,难点是,如何提供高效的设计机制?采用UI拖拉拽的方式,又或者是DSL,都有各种的博弈。总体来说使用代码会更加友好。而为了直观的展示架构的设计,我们会通过架构图来表示,这也就是系统的核心。演进架构。其核心是构建架构治理模型和设计架构的适应度函数,以引导系统进行有序的变更。从实现的层面来说,就是从对实现出来的软件
5、架构(即代码等)进行分析,设计度量指标,并提供高质量的工具,来引导架构回归到合理的状态。观测架构。即观察架构的应用的运行状态,主要依靠于各类的APM(appIicationperformancemanagement,应用性能监测)工具。在云原生时代,相关的工具也非常的流行,如SkywaIking等。一个基础的架构工作台,应该考虑上述的三个要素。进阶:构建架构的数字挛生理想的架构工作台,它应该提供一个可交互的架构的映射版本。它意味着:它是对系统或对象在其整个生命周期中的虚拟表示,我们可以根据实时数据进行更新,并使用模拟、机器学习和推理来帮助决策。从概念上来说,它提供了一个非常美好的未来,难点就在
展开阅读全文