本篇文章5032字,读完约13分钟
数字化变革已成为以前流传下来的公司的必然选择。 随之而来的商业场景、顾客的习性、行为发生了迅速的变化,以前传达的很多领域的在线业务正在迅速成长。
金融领域的移动结算、互联网资产管理等汽车制造领域的市场营销、电子商务、售后服务等在线业务的比例正在迅速提高。 it团队的业务开发、迭代是每月或每周进行的,需要7*24小时全天候响应,这些都给系统开发和运输带来了巨大的挑战。
以前,由于向it效率转型的呼吁和业务模式的革新,系统更新频繁,应用程序多,复杂性也急剧上升,以前体系结构不堪重负。 因此,架构变革是企业数字化的最大难点。
根据雪波大会对200多家制造公司的痛点调查,在系统支持方面,前四个课题分别是系统多、复杂性越来越高、运维管理多、复杂性高。 组建全栈运维队很难。 网上访问压力大设备购买维护高。
thoughtworks是技术类咨询企业。 这家企业长期以来致力于从世界不同的地区为不同的顾客服务,在不同的商业模式下进行不同的项目。 成功的例子包括德国戴姆勒公司的营销、电子商务、售后服务如何实现顾客导向的数字化在线,美国视频网站netflix系统架构的进化快速发展等。
通过全球项目经验的积累和实践,thoughtworks总监级顾问neal ford提出了进化型体系结构的概念,将“进化性”作为新体系结构的特征添加到系统中,认为系统进化了 这是一个进化的体系结构,可以考虑多个体系结构维进行诱惑性增量更改。
不久前,neal ford携新书《buildingevolutionaryarchitectures:supportconstantchange》来到中国进行宣传。 钛媒体记者借此机会与neal ford进行了深入的交流,为公司以前传达的体系结构的世代升级提供了新的思路。
“进化”而不破坏现有的it体系结构
在迄今为止传达的公司软件开发过程中,经常会面临顾客索赔的变更、来自市场的变更、因潜在机会而发生的变更等变更。
这些变更要求公司能迅速调整。 但遗憾的是,事件总是不如我们所愿。
这是因为公司的业务应用经过多年的it建设,系统非常巨大,难以变更。 例如,公司以前传送过sap,汽车制造公司以前传送过dms、mes等,其中任何一部分都要变更,就需要重新配置整个应用程序。 敏捷开发和迅速交货更是如此。
另外,以往流传下来的公司在长期的it建设过程中,一般大量采用外包团队,使用的技术堆栈之间差异很大,统一管理和运输维度的要求更高。 运维7*24小时全天候,在线升级,需要快速反应。
这时,卓越的微服务结构,以前出现在公司眼前,它有很多特点。 例如,支持独立开发、独立部署、独立发布、中心化管理、高并发高可用性,支持丰富的技术堆栈,公司可以根据需要支持灵活的技术选择。
nealford认为微服务是许多支持进化行为的体系结构之一。 “微服务是后devops革命时代出现的第一种新的体系结构风格。 是全面接受持续交货的第一个工程实践,也是进化型体系结构家族的一员。 进化体系结构的首要基础是支持增量和非破坏性更改,支持应用程序结构级别的多维变化。 但是,微服务只是支持一些进化行为的许多体系结构之一。 ”。
进化型体系结构基于微服务体系结构增加了两点。 既要满足公司应用的真正场景也要满足技术的进化。
首先,必须创建进化体系结构,满足公司应用程序的实际场景。
这也回答了我们复印件的问题
为什么进化型架构被称为最好的迭代模型? 因为这种体系结构不会破坏以前传递的包,而是将以前传递的it体系结构进化成微服务体系结构。
nealford在“进化型架构”中也表示:“对于大软件包,大单体的应用,如果进行微服务的变革,不是直接杀死这个大单体的应用,而是构筑新的微服务平台。 从像dms这样以前就传递软件包的模型来看,一定是朝着如何发展软件包的方法发展的”。
本来,对于以前传入的公司来说,sap、dms、mes等以前传入的软件包等本身就关闭了,公司购买这样的软件包的最大出发点是降低自己的it价格实现it能力 但是在数字化变革的大趋势下创新成为了公司最重要的需要。
thoughtworks从技术角度考虑公司的实际应用场景,认为应该定制开发软件或从定制的软件平台开发自己的商业模式。
而且,进化型架构符合技术的发展。
nealford认为微服务本身就是体系结构的模式或体系结构的风格。 这种体系结构风格是进化体系结构的基本和实践最佳做法。 例如,当行业总是在进行微服务的变革时,微服务本身的力量或微服务本身的范围应该是什么样的? 我认为进化型体系结构有助于企业在力量的层面上,在整个体系结构中不断发展。 ”。
nealford对钛媒体说,这项技术的发展方向有两个方向。
“第一个方向是这个增量进化,系统可以进行增量进化或增量变更。 这本身作为进化体系结构定义的第一个维度,是为了处理这个问题而产生的。
第二个方向称为基于导向的进化或基于导向的进化。 基于指南的进化是指希望在系统内提高性能。 我定义了适应度函数( fitness /span ),即如何才能向我们想要的性能方面进化。
但是,微服务也要表现出劣势——它带来了系统的各种复杂、运维要求更高等诸多难点。 对团队来说,构建微服务结构很困难,运维效率低,运维价格高。
此外,创建微服务也可能导致团队之间的信息表达冲突。 微服务必须与devo PS (开发操作)同步推进。 当微服务被分割成独立的业务模块时,服务间通信接口设计变得很重要。 如何科学地将系统引入服务器,使各服务高效工作,这是更难的。
02
进化体系结构符合以前传达的公司变革诉求。
“在谈论进化体系结构时,实际上有很多不同。 这些大体上是严格的,但微服务在某种程度上表明了进化的体系结构的大致情况。 例如,在谈论微服务时,我想迅速应对频繁的诉讼变更。 这个微服务所承担的期待是让我们能够尽快适应变化,因为进化体系结构中提出的进化性与此相协调。 ”。
nealford补充说,对进化性有理解错误。 开发者必须非常聪明地考虑所有可能的变化,在所有这些可能的变化中都写代码,最终不要变化。 但是,进化性与保守性不同,“不是如何预测将来,而是无论你是否事先设想了这些变化,随时都可以应对变化的状态。 ”。
今天,进化体系结构本身是基础,如果企业打算使用进化体系结构模型,那么敏捷开发模型、敏捷开发方法、持续交付的开发基础设施或持续交付的开发实践和devops 如果企业没有这样的基础,实际上很难实现进化的体系结构。 进化的体系结构本身也需要公司整体开发的流程和模型灵活而持续的交付,才能制作devops。
根据neal ford的说法,现在在业界使用进化体系结构的公司不仅使用美国的视频网站netflix公司,还有很多ThouHTWWWWWWORKK参加的企业和合作的企业使用进化体系结构。 但是,到目前为止,没有定义为进化型架构和适应度函数,而是定义为fitness /strong
这些以前传达的公司大多通过持续提供流水线,通过对体系结构、测试系统的一点追求,针对体系结构本身的变革,实践了进化体系结构的模型。 因为它满足了进化体系结构的优点
第一个是模块化和结合。 很明显,边界上确定的组件给希望非破坏性更改的开发者带来了很大的便利。 没有架构元素的混乱架构没有模块化,因此无法进行进化性变更。 另外,不恰当的结合会引导改变难以预料的方向,阻碍进化。 进化型架构支持某种程度的模块化,该模块化一般在技术架构层面(古典的分层结构等)体现。
第二个是围绕商业能力的组织。 现在,更多成功的体系结构以行业体系结构分层中的模块化为特征。 基于服务的架构是传统的soa的第一区别是模块划分的策略,soa倾向于按技术层进行模块划分,基于服务的架构倾向于按商业行业进行划分。
第三个是实验。 实验是进化型架构为业务提供带来的最大价值之一。 从操作的角度来说,可以使用a/b测试等一般的持续交货实践,以低价对应用程序进行微小的变更。 微服务架构通常以服务间的路由为中心定义应用程序.。 典型的微服务体系结构围绕服务之间的路由定义应用程序,允许并运行同一服务的多个版本。 相反,实验和现有功能的阶段性置换也是可能的。 最终,这样公司的业务就可以花更少的时间推测待办事项,投入到假设驱动型的开发中。
在国内,由于钛媒体记者最近的访问,很多以前传达的公司架构还不能实现敏捷开发、持续交货等,为了实现数字化变革,首先需要对公司以前传达的架构进行变革
nealford说,关于公司以前传达的体系结构变革,首先需要公司自己构建基础工程实践,使原来的包装购买模式转型为新模式。
“例如,在持续交付层面,如果企业没有进行持续交付的变革,企业在进行精益企业(或数字化)变革时,第一步是进行持续集成的变革,结合自动化的基础架构。 这是基本能力,不仅是向进化体系结构转移,而且是数字化变革所必需的能力。 ”。
03
大数据、ai技术都引入进化型架构
“目前,进化体系结构中引入了很多ai实践。 例如,一家公司使用tensorflow编写框架,帮助分解网络传输这一层。 从安全的立场来看,是有一点安全的点还是有一点安全的攻击,不是可以从网络传输这一层使用ai进行分解发现吗? 将来,通过逐渐提高现在的ai技术应用的水平,在不同的服务之间传送新闻的水平上,通过提到能否利用ai找到这样的模型,本公司可以认识到我的安全风险哦。 ”。
neal ford认为,现在最流行的ai技术将来很可能会引入进化型架构,参与企业架构整体适应性函数的设计,或在架构进化过程中利用ai的能力进行越来越多的事件
“对于大数据的大数据和数据类型的项目,在进化型体系结构中也可以应用于单点场景。 例如,在进化型架构中,定义了公司最关注的适应度函数、最关注的架构设计要素。 所有的元素都可以由适应度函数定义。 我认为各个架构必须是非常独特的、特定的适应度函数,或者有这样的架构规则的新定义,就像写unittest和写/span一样。
无论是以前传达的体系结构还是进化型体系结构,系统本身在市场上都是竞争对手。 neal ford也坦率地说,如果是直接利用该系统赚钱的公司或组织,这样的公司首先使用进化体系结构的模型。 在许多情况下,当一家公司开始使用进化体系结构模型时,该体系结构对公司的第一个影响并不大。 “只是简单地在公司的流水线上配置适应度函数,或者配置模式检查的脚本,实际上在使用进化的模式中实践,但很明显这个实践对人和组织来说变化不大。 ”。
“但是,如果企业试图逐个发挥进化体系结构的利益,整个团队的组织结构一定会发生一些变化。 例如,公司的组织结构应该更好地支持业务敏捷性变革。 公司的组织结构应该能更好地降低团队不同成员之间的变动。 我可以让团队成为更稳定的团队。 然后我的团队可以支持devops这个实践的追求和应用。 ”。
这就像1967年康威提出的“康威法则”,企业如何组织团队结构,以及不同的团队结构可能会影响最终的系统形态。 只是团队对服务有良好的所有权意识,团队做的微服务就是这样疏松耦合的独立服务。 康威法则是在1967年提出的,真正被业界采用是因为近年来有了微服务后,团队开始使用康威法则。 “所以这件事相对来说有比时间长的周期。 其实在业界已经有这一点大致在那里,但真正应用于公司界还需要时间。 “neal ford显示。
年8月10日,在itvalue举行的年度三亚it价值峰会上,ThouGHTWWWOWOWKOW的高管将共享关于系统体系结构的主题副本,敬请期待。
【三亚it价值峰会预告】年三亚it价值峰会开始! 自2009年第一届峰会在三亚举行以来,今年正好是第十年。 这十年有很多变化,是停下来仔细总结说的时候了。 明确了itvalue三亚峰会的主题是“再生重建”,我们回顾了这三天中过去十年的科学技术和商业环境,以及我们自己发生的一些变化,作为其中的重要参与者,我们有了新的认识和技术 年大会有四个方向的主题:架构、互联、认识和痛点。 除了回归技术、回归本质、耕作资源三大亮点之外,我们还为大家配置了很多有趣的“辅助材料”。
本文最初在wechat公共平台上发布: itvalue。 文案是作者个人的观点,不代表网络的角度。 投资者据此,风险请自己承担。
标题:“为什么演进式架构被誉为最好的系统迭代模式?”
地址:http://www.china-huali.com/cjxw/34979.html