草庐IT

下一代架构?从组装式企业到组装式应用

华为云开发者社区 2023-03-28 原文
摘要:华为云ROMA Connect作为进入Gartner“企业集成平台”魔力象限的厂商,在EiPaaS领域持续积累沉淀,为各大企业数字化转型、应用现代化演进提供了强大的驱动力。

1.为什么未来的企业是组装式的?

物竞天择,适者生存,企业也是一样,在发展过程中,为了适应市场环境而做出快速改变。良性的竞争也会促进企业自身业务创新,提升运营效率。当今企业面临几大挑战:

  • 业务更快速的变化。可以看到这几年一些新的需求如远程办公、远程教育、信息安全等迅速涌现。
  • 用户体验的多样性。区别于之前线上或者线下的体验方式,企业及用户更需要线上线下如何互动的体验。除了在PC端,还有手机端、pad端、车机端、元宇宙、AR/VR等等,各种丰富的设备正在不断探索各种场景下的新体验。
  • 全球经济环境的波动。很多企业的国际业务会受到环境的影响,众多企业将业务重心转移到国内市场。

企业该如何应对挑战?如何能够快速适应变化,领先竞争对手?

我们不能再用过去的思维方式来应对当前和未来的挑战了!过去我们是如何做的?

  • 没有变化就不动
  • 尽量躲避风险
  • 总是把项目庞大化
  • 尽量保持稳定性

我们要转变为“组装式”思考方式:

  • 一切都在变化中
  • 化风险为机遇
  • 用模块化产品的方式思考
  • 选择灵活具有弹性的工具

组装式思考是一种思维方式,帮助我们面向新的业务价值点、通过模块化的工具去把控飞速变化的风险。组装式企业将为企业增加极大的竞争力和灵活性。

2.融合团队是组装式企业中的“组装者”

融合团队是组装式企业中的“组装者”。按部就班的使用过往的方式分析、开发和交付,无论是业务团队还是IT团队,都无法单独支持正在飞速发生的业务变革。业务团队和IT团队必须共同努力,承担共同的愿景。不仅仅是IT团队和业务团队,可组装是一项团队变革:所有受影响或感兴趣的利益相关者都必须参与进来,以配合变革的步伐。

融合团队是一个多种角色不同专业的人员组合成的团队,以业务结果为共同的目标。融合团队中业务人员与IT人员之间不再有部门壁垒,不再对立,是合作协同的关系。未来企业的组织方式将会是更多的融合团队,各方持续协作,有力推动业务快速适应变化并快速创新。

3.组装式应用是未来企业组织的数字孪生

未来企业包含几个模块:业务核心能力、业务模块(如客户管理、价值呈现、财经等等)、运营模块(如流程管理、资源管理、行政管理等等)。企业需要自建一部分核心业务能力,一部分能力直接外包或直接从供应商购买,另一部分则会与生态伙伴合作。未来企业是组装式的,那么与之对应的IT系统、业务应用也是组装式的。面对自建、供应商、生态伙伴,企业对外提供的业务应用也将是通过更大程度的复用和组装来实现。组装式应用是组装式企业的数字孪生。

3.1 PBC(Packaged Business Capabilities封装的业务能力)

组装式应用由一系列封装好的业务能力(PBC,Packaged Business Capabilities)组成。PBC是封装好的软件组件,是具有完善定义的业务功能,可对外开放接口,业务用户可快速识别。PBC并没有固定的大小、功能范围或内部体系结构,而PBC具有模块化、可发现、自主和可编排(集成)的特征。

一个PBC的组成结构如上,一个PBC包含内部数据和元数据、可由多个服务/微服务组成,PBC对外开放有两个渠道:

  • API接口
  • 事件通道,可以是event事件网格,也可以是消息队列(如Kafka、RocketMQ等等)

同时PBC也可以包含可选的用户交互等等的能力。

我们可以对现有的PBC做如下分类:

  • 基础PBC提供某种特定的业务服务,同时开放API供外部调用。基础PBC在当今的应用体系结构中非常广泛,由IT专业人员设计并开发。基础PBC没有完全封装数据实体,因此会受到外部数据和服务的依赖关系的约束。银行存款服务就是一个例子。
  • 数据PBC提供分析数据。例如信用评级或情绪分析。这些服务现在也可以随时从Google AI和Equifax等供应商以API为中心(Headless)的SaaS和DaaS的形式提供。
  • 完全PBC封装了一个业务实体(例如,全周期账户或产品管理),并在很大程度上是自主的,可随时供新的外部应用组装。它们的架构是仿照先进的物联网数字孪生的架构。
  • 迷你应用PBC封装了一个业务实体,并具有用户界面,可独立部署,能够与其他此类迷你应用程序和其他用户体验界面搭配使用。
  • 流程(抵押、付款订单)不是PBC。流程仅仅是一个作业流,不是PBC,而流程管理,可以作为一个PBC。

根据业务场景,PBC可以分为如下的一些类型:

• 封装的业务对象

例如:帐户管理、采购订单管理

• 流程管理

例如:订单到现金、信贷批准

• 数字孪生

例如:涡轮机管理、电梯管理

• 数据参考

例如:汇率查找、关键字搜索

• 分析洞察

例如:情绪分析、信用评估

3.2 组装式应用是下一代软件架构

可组合架构是一种新的思维方式,即认清变革是获得新业务价值的驱动力,模块化+快速组装是加速变革的工具和手段。

2000-2010年,主流的架构体系为单体架构。单体架构的特征为:紧耦合、完全封闭的架构,系统复杂、错综交互,动一发而牵全身。此阶段的单体软件之间的交互主要通过企业总线ESB。软件的交付形式为整体的项目式交付,即一单项目完成即完成,不是一个持续的规划。这就容易导致重复制造各种轮子,如OS、DB、Middleware等等。

到了2010-2020年,新的架构逐渐向服务化架构演进,如SOA架构、微服务架构。SOA服务化架构的主要特征为:松耦合。应用为集中式、计划内停机扩容,通常也通过ESB进行系统集成。此时的软件团队规模较大,为100~200人,软件开始以产品式进行规划交付,但TTM(Time To Market)较长,为年、半年、月。SOA架构在大型、超大型企业中仍然流行。

而微服务架构的主要特征为充分解耦。服务可扩展性强,可做到自动弹性伸缩;服务高可用,升级、扩容可不中断业务。同时随着DevOps的实践不断涌现,团队可按天、周进行升级发布。微服务架构在互联网公司、中小企业、初创公司更为常见。

当今2020年以后,组装式架构渐渐成为主流。此阶段的主要特征为:

  • 服务器无感知
  • API&Event为基础
  • 一切皆服务
  • 超小的资源粒度(函数级)
  • 无需运维
  • 毫秒级的极致弹性
  • 小时级的业务构建

应用不再是以整体方式交付,而是组装式交付,通过服务目录/市场方式自助式选择并组装。

4.如何进行组装

4.1 EiPaaS(融合集成) 是组装式应用的基础

组装式业务应用参考体系架构:

  • 最开始为集成数据平台,包含各种源数据(App、API、消息、数据库、函数)、元数据、衍生的数据、内部的流程、关系、日志等等。这一层用于连接原始的或传统的系统。
  • 通过集成平台,组装成各种类型的PBC。
  • 这些PBC将发布到服务目录/服务市场。
  • 组装平台上,PBC将被编排以及与不同的UX开发和运营治理系统集成,生成新的组装式的应用,为不同的业务场景、不同的用户提供千人千面的体验。

通过上述架构可以看到,这一架构需要的核心能力有:集成、组装PBC、资产发布、编排。而EiPaaS(Enterprise integration Platform as a Service)整合跨APP数据、开放API、封装业务能力(PBC),通过低代码提供的组装体验,企业灵活编排以实现新的业务能力,EiPaaS是组装式应用的基础。

2023年,30%的新应用将采用组装式进行交付,而2020年不到5% 。2023年,超过75%的SaaS供应商将使用组装式应用的体系结构。大型SaaS厂商都开始布局iPaaS并取得大幅增长,技术趋势围绕多云、互联系统/事物、事件流、边缘、API驱动的集成、人工智能等展开。

4.2 强大的南向集成能力+高效的北向业务流是EiPaaS的核心技术能力

EiPaaS核心能力

EiPaaS提供如下核心能力:

• 数据集成

应用连接器、数据连接器、函数计算、文件连接器、任务调度等等。

• 服务集成

未来的服务是以API为中心的服务,服务集成需要提供API设计、API网关、API编排、API目录、API测试等等。

• 设备集成

连接IT和OT,提供设备接入、在线调试、规则引擎等等的能力。

• 消息集成

低时延、Kafka、消息通道

• 云边端融合集成

边侧、端侧部署,各层级联的能力

• 业务编排

统一认证、集成应用、集成资产管理等等的能力

通过上述能力,可以南向集成各种应用、异构、IT/OT数据,组装成以API和事件驱动的PBC能力,再通过低码编排能力针对不同背景的用户提供不同的体验。

4.3 华为云ROMA Connect定位EiPaaS,支撑应用现代化演进

华为云ROMA Connect作为进入Gartner“企业集成平台”魔力象限的厂商,在EiPaaS领域持续积累沉淀,为各大企业数字化转型、应用现代化演进提供了强大的驱动力。

ROMA Connect具备四大集成能力数据集成FDI、消息集成MQS、服务集成APIC、设备集成LINK,同时可在混合云、边端部署,充分满足南向集成的能力。

在四大集成能力的基础上,ROMA Connect提供了ABM应用业务模型,提供元数据管理及应用的平台。进一步,ROMA Connect提供了业务流编排BFS的能力,可以通过低码托拉拽完成小时级分钟级的业务北向组装能力。

在API、数据、消息、事件等基础上,ROMA Connect对接资产市场,为企业和生态伙伴提供资产汇聚、沉淀的能力。

 

点击关注,第一时间了解华为云新鲜技术~

有关下一代架构?从组装式企业到组装式应用的更多相关文章

  1. ruby - 将差异补丁应用于字符串/文件 - 2

    对于具有离线功能的智能手机应用程序,我正在为Xml文件创建单向文本同步。我希望我的服务器将增量/差异(例如GNU差异补丁)发送到目标设备。这是计划:Time=0Server:hasversion_1ofXmlfile(~800kiB)Client:hasversion_1ofXmlfile(~800kiB)Time=1Server:hasversion_1andversion_2ofXmlfile(each~800kiB)computesdeltaoftheseversions(=patch)(~10kiB)sendspatchtoClient(~10kiBtransferred)Cl

  2. ruby-on-rails - Rails 应用程序之间的通信 - 2

    我构建了两个需要相互通信和发送文件的Rails应用程序。例如,一个Rails应用程序会发送请求以查看其他应用程序数据库中的表。然后另一个应用程序将呈现该表的json并将其发回。我还希望一个应用程序将存储在其公共(public)目录中的文本文件发送到另一个应用程序的公共(public)目录。我从来没有做过这样的事情,所以我什至不知道从哪里开始。任何帮助,将不胜感激。谢谢! 最佳答案 无论Rails是什么,几乎所有Web应用程序都有您的要求,大多数现代Web应用程序都需要相互通信。但是有一个小小的理解需要你坚持下去,网站不应直接访问彼此

  3. ruby - 无法运行 Rails 2.x 应用程序 - 2

    我尝试运行2.x应用程序。我使用rvm并为此应用程序设置其他版本的ruby​​:$rvmuseree-1.8.7-head我尝试运行服务器,然后出现很多错误:$script/serverNOTE:Gem.source_indexisdeprecated,useSpecification.Itwillberemovedonorafter2011-11-01.Gem.source_indexcalledfrom/Users/serg/rails_projects_terminal/work_proj/spohelp/config/../vendor/rails/railties/lib/r

  4. ruby-on-rails - Rails 应用程序中的 Rails : How are you using application_controller. rb 是新手吗? - 2

    刚入门rails,开始慢慢理解。有人可以解释或给我一些关于在application_controller中编码的好处或时间和原因的想法吗?有哪些用例。您如何为Rails应用程序使用应用程序Controller?我不想在那里放太多代码,因为据我了解,每个请求都会调用此Controller。这是真的? 最佳答案 ApplicationController实际上是您应用程序中的每个其他Controller都将从中继承的类(尽管这不是强制性的)。我同意不要用太多代码弄乱它并保持干净整洁的态度,尽管在某些情况下ApplicationContr

  5. ruby-on-rails - 如何在我的 Rails 应用程序 View 中打印 ruby​​ 变量的内容? - 2

    我是一个Rails初学者,但我想从我的RailsView(html.haml文件)中查看Ruby变量的内容。我试图在ruby​​中打印出变量(认为它会在终端中出现),但没有得到任何结果。有什么建议吗?我知道Rails调试器,但更喜欢使用inspect来打印我的变量。 最佳答案 您可以在View中使用puts方法将信息输出到服务器控制台。您应该能够在View中的任何位置使用Haml执行以下操作:-puts@my_variable.inspect 关于ruby-on-rails-如何在我的R

  6. ruby-on-rails - 如何在 Gem 中获取 Rails 应用程序的根目录 - 2

    是否可以在应用程序中包含的gem代码中知道应用程序的Rails文件系统根目录?这是gem来源的示例:moduleMyGemdefself.included(base)putsRails.root#returnnilendendActionController::Base.send:include,MyGem谢谢,抱歉我的英语不好 最佳答案 我发现解决类似问题的解决方案是使用railtie初始化程序包含我的模块。所以,在你的/lib/mygem/railtie.rbmoduleMyGemclassRailtie使用此代码,您的模块将在

  7. 世界前沿3D开发引擎HOOPS全面讲解——集3D数据读取、3D图形渲染、3D数据发布于一体的全新3D应用开发工具 - 2

    无论您是想搭建桌面端、WEB端或者移动端APP应用,HOOPSPlatform组件都可以为您提供弹性的3D集成架构,同时,由工业领域3D技术专家组成的HOOPS技术团队也能为您提供技术支持服务。如果您的客户期望有一种在多个平台(桌面/WEB/APP,而且某些客户端是“瘦”客户端)快速、方便地将数据接入到3D应用系统的解决方案,并且当访问数据时,在各个平台上的性能和用户体验保持一致,HOOPSPlatform将帮助您完成。利用HOOPSPlatform,您可以开发在任何环境下的3D基础应用架构。HOOPSPlatform可以帮您打造3D创新型产品,HOOPSSDK包含的技术有:快速且准确的CAD

  8. 叮咚买菜基于 Apache Doris 统一 OLAP 引擎的应用实践 - 2

    导读:随着叮咚买菜业务的发展,不同的业务场景对数据分析提出了不同的需求,他们希望引入一款实时OLAP数据库,构建一个灵活的多维实时查询和分析的平台,统一数据的接入和查询方案,解决各业务线对数据高效实时查询和精细化运营的需求。经过调研选型,最终引入ApacheDoris作为最终的OLAP分析引擎,Doris作为核心的OLAP引擎支持复杂地分析操作、提供多维的数据视图,在叮咚买菜数十个业务场景中广泛应用。作者|叮咚买菜资深数据工程师韩青叮咚买菜创立于2017年5月,是一家专注美好食物的创业公司。叮咚买菜专注吃的事业,为满足更多人“想吃什么”而努力,通过美好食材的供应、美好滋味的开发以及美食品牌的孵

  9. ETH 徘徊在 1,700 美元附近;下一步是什么? - 2

    以太坊价格分析表明横盘整理,偏向中性。价格从前一交易日的高点1,791美元回落后正在盘整。但是,有趣的是,多头在1,680美元附近持有重要支撑。多头在1,700美元的心理水平附近聚集动能,并准备在接下来的几个交易日推向1,800美元。以太坊价格显示出盘整迹象,因为它形成了多个连续的顶部形态。这种回撤可能是第二大加密货币下一轮上涨的基石。以太坊连续第二个交易日走低。过去10天,价格在1,590-1,760美元的短期区间内盘整。每日烛台高于1,800美元将维持ETH的进一步上涨。ETH价格走低日线图上,以太坊价格在上升趋势线附近获得一轮支撑。来自879.80美元低点的看涨趋势线为ETH买家提供了支

  10. 【鸿蒙应用开发系列】- 获取系统设备信息以及版本API兼容调用方式 - 2

    在应用开发中,有时候我们需要获取系统的设备信息,用于数据上报和行为分析。那在鸿蒙系统中,我们应该怎么去获取设备的系统信息呢,比如说获取手机的系统版本号、手机的制造商、手机型号等数据。1、获取方式这里分为两种情况,一种是设备信息的获取,一种是系统信息的获取。1.1、获取设备信息获取设备信息,鸿蒙的SDK包为我们提供了DeviceInfo类,通过该类的一些静态方法,可以获取设备信息,DeviceInfo类的包路径为:ohos.system.DeviceInfo.具体的方法如下:ModifierandTypeMethodDescriptionstatic StringgetAbiList​()Obt

随机推荐