数字化转型,如火如荼。作为企业数字化转型的重要工具,势必需要软件服务做支撑,但传统软件开发面临时间长、成本高等痛点,低代码开发平台便成企业数字化转型的“利器”。
2021年,低代码按下了企业竞争的“加速键”。艾瑞咨询《2021年低代码行业研究报告》显示,与2020年相比,中国低代码市场规模将大幅增长至29.3亿元,未来五年市场规模有望达到131亿元。一场没有硝烟的战争,吹响了集结号。Gartner预测2024年应用软件开发活动中,65%将通过低代码方式完成。
在当前B端领域低代码开发火热的情况下,可以大致分为二类:
➤ 面向技术人员的快速开发平台
平台侧重点是对中台共享服务能力进行快速封装,以方便技术人员通过可视化的形式快速开发,最终也是运行低代码平台之上,能够支撑各种复杂业务场景。
➤ 类似宜搭这种偏零代码的开发平台
不需要有太多的开发经验,大量工作都可以通过页面配置的方式完成,当然只能支撑一些相对简单的业务场景。
本文以下内容主要是围绕第一类情况展开,低代码开发平台应该是以“模型驱动+微服务编排”为核心思想,在大量复用能力的基础上完成编排并暴露为API接口的一种模式。
“模型驱动+微服务编排”
随着系统规模越来越大,微服务架构成为主流架构选型;在微服务架构中,由于系统的拆分导致系统架构变得非常复杂,为统一集中管理API和不直接暴露业务中台服务,进而对请求进行负载、鉴权、限流、熔断、灰度发布等操作,前置系统——API网关就产生了,对于API网关的功能定位,分为流量网关和业务网关:
➤ 流量网关
跟后端服务关系不大,主要处理安全策略、流控策略、路由分发策略等。
➤ 业务网关
跟后端服务有关联性,一般被直接部署在业务中台的上层;主要应用场景是协议转换,服务组装和业务聚合等。
作为微服务体系中的核心基础设施,各种开源的网关产品(如 Spring Cloud gateway)都可以方便地实现一些所需基本功能(鉴权、限流和路由等),但仅有这些功能还远远不够,开源产品提供的都是一对一路由,而在实际开发中,需要对一些服务进行编排和聚合是很常见的,如果需要去写代码、走发布就会很繁琐。
举一个常见的场景,比如在实现开发商品详情页的时候,在详情页面上就会呈现商品、库存、评价和活动等多个信息的展示功能。
如果这块前端开发来做,往往需要前端开发调用多个后台的API接口服务来获取数据,但对前端开发者而言,只希望调用一个粗粒度的组合服务来完成业务需求和功能实现,至于内部如何组合服务、如何传递输入和输出,都是内部规则逻辑,前端开发不太关心,这时通过服务编排来返回所有需要的信息,一次即可。
服务编排为代码开发增加引擎
我们将业务网关的核心能力设计为服务编排平台,具体落地是个 jar 包,应用层引入这个“嵌入式网关”的依赖,通过服务编排平台配置应用层接口的相关编排信息。如果中台服务是 dubbo 服务的话,泛化调用都不用引入接口包,可以将依赖的api 包干掉。服务编排是服务组装的过程,不是简单完成单一服务的设计和开发,即将多个原子服务组装在一起,最终形成一个新的接口能力,其中关键点包括:
➤ 数据传递
前几个节点的服务调用输出,经过加工处理后作为下个服务的输入,这个是接口开发里面经常遇到的场景,当然接口响应数据,也是通过编排中几个节点服务调用的输出数据,经过加工处理成宽表和树形结构输出的。
➤ 循环组件和条件分支组件
通过循环和条件判断的设计,可以轻松应对业务开发中常见的场景。
➤ 可视化设计
通过拖拉拽的能力,就可以轻松设计串行化和并行化调用服务,完成可视化组装业务能力。
服务编排上线后,最直接的收益是人效方面。因为减少了应用层开发和发布时间,因此相应节省了开发的工时,选择几个业务场景做数据分析,工时整体节省大概30%左右。根据中台鼻祖阿里公开的数据,通过业务中台需求开发占比来看,40%的需求通过配置变更,30%的需求通过服务组装,剩下的30%需求通过代码开发也基本可以佐证这个数据,比如开发一个购物车接口就可以通过下图拖拉拽操作完成:
服务编排是低代码平台里面的一个关键能力,也是在中台架构里面,实现前端应用快速开发和底层服务共享能力之间协同的关键能力。美云智数营销云相关产品构建在大量可复用能力的业务中台之上,上层应用可以基于共享能力完成快速开发,技术中台拥有先进且高可用技术平台服务能力,支撑企业业务、管理创新。
Gartner同时还预测,2024年应用软件开发活动中,75%的大型企业将用至少四种低代码开发工具开发应用。低代码将成为B端服务领域的基础设施、颠覆传统开发方式,未来已来。
版权及免责声明:凡本网所属版权作品,转载时须获得授权并注明来源“物联之家 - 物联观察新视角,国内领先科技门户”,违者本网将保留追究其相关法律责任的权力。凡转载文章,不代表本网观点和立场。
延伸阅读
版权所有:物联之家 - 物联观察新视角,国内领先科技门户