嘉宾 | 马俊昌 整理 | 哪 吒

出品 | CSDN云原生

2022年5月17日,在CSDN云原生系列在线峰会第5期“DevOps峰会”上,京东科技架构师分享了京东微服务低代码Serverless平台星链的应用实践。

戳👇观看马俊昌分享视频

京东科技马俊昌:微服务低代码平台“星链”的应用实践

“星链”是什么

研发过程中的业务需求,可以简单概括为“多快好省”,即丰富变化的业务需求、快速实现、稳定可靠性、节省资源成本。

面对如此的需求,研发存在以下两种类型的挑战:

1. 固有的、不可约化的复杂

  • 复杂的领域模型

  • 复杂的业务场景

  • 复杂的业务依赖

  • 变化的业务需求

2. 受限于当前技术的、非固有的、可约化的复杂

  • 复用的困难:大量类似重复工作

  • 复用的困难:大量类似重复工作

  • 大量与业务无关的、手工易错的服务器运维管理工作

对于第一类固有的、不可约化的复杂,可以通过业务体系化进行治理。主要借鉴业界流行的DDD领域驱动的设计,以及中台化的思想,对业务进行抽象、沉淀、复用,再去进行治理以达到可持续发展。

对于第二类挑战,我们通过“星链”面向各类场景进行快速交付,同时可以使得研发人员无需过多关注底层的基础设施。

星链是一个函数服务平台,面向事件处理、服务前端的后端(BFF)、服务流程编排等应用场景,以可视化、组件化方式低代码开发函数服务,以声明式进行Serverless部署,帮助用户快速交付场景化业务研发需求,提升场景化的微服务研发效能。

“星链”关键技术

VMS:简单灵活的编程模型

VMS是一个微服务开发和编排的领域模型,内外依赖组件化、配置化,聚焦业务逻辑。在一个VMS中可以有多个触发器、函数、连接器。

  • 触发器用于定义对外提供访问的方式,即什么样的时机会触发该服务。可以分为三类,分别是:HTTP/HTTPS触发器、Kafka消息触发器、定时任务触发器。

  • 函数用于封装业务逻辑,分为BPMN函数和代码函数。BPMN是一个业务流程建模规范,星链借用该规范来可视化地描述业务逻辑。BPMN函数同样可以调用代码函数,如Groovy、Java函数等,也可以调用其他BPMN函数,以构建更复杂的业务逻辑。

  • 连接器用于封装第三方服务,包括HTTP连接器、DB连接器等。

Serverless:计算资源模型

虽然K8s日渐流行,但考虑到仍有很多用户使用传统虚机,所以星链提供统一的计算模型,既支持传统虚机,也支持K8s。

星链使用声明式部署,对于虚机和K8s同样支持。不同的环境(测试、预发、生产)有不同的部署配置,每个环境下可以有多个部署配置,以入口加以区分。每个入口配置可能包括多个条目,每个条目声明再指定集群分组、部署指定版本、指定实例个数;同一个集群分组可以部署多个不同版本。

“星链”应用场景

星链使用微服务低代码的方式进行开发,而当前主流的开发方式依旧是使用代码。在京东内部,星链主要使用在以下场景:

  • 业务流程编排——授信流程、放款申请等

  • BFF(Backend for Frontend)——接口数据聚合、适配等

  • 异步消息处理——维护缓存、同步状态、转换格式等

  • 定时批处理任务,扫表、执行任务、更新状态

  • 后台管理服务——运营后台、客服后台服务

  • 工作流自动化——日常工作流程自动化

  • 临时性业务需求——运营活动、临时数据处理等

通过用户的反馈,星链具有以下优势。

  • 开发方面:开发快、流程可视化

  • 部署方面:秒级、独立部署,不影响其他业务逻辑

  • 管理方面:无需建应用、无需管理服务器

  • 协作方面:产品、研发、测试统一视图,方便协作,此外,前端也可开发后端服务

“星链”应用实践

星链Studio

触发器

• 支持类型:Kafka,定时任务,HTTP/HTTPS…… 

• 参数配置可使用环境变量

• 对于HTTP,自动生成访问URL地址

DB连接器

HTTP连接器

  • 自定义方法列表

  • 支持GET/POST/PUT/DELETE

  • 请求参数支持URL查询参数、URL路径参数、请求头参数、Cookie参数、请求体

  • 请求体支持JSON、Text、Form格式

  • 参数定义支持YML、CSV源码模式,方便复用

  • 支持基于示例值推断参数定义

星链Serverless

作为微服务低代码Serverless平台,星链帮助用户通过统一的Web界面完成可视化微服务(VMS)的开发、调试、构建、测试、部署完整流程,以可视化、组件编排方式开发微服务,以声明式进行Serverless部署,实现“快速建场”,即快速交付BFF、FaaS、服务编排、事件处理等场景化、定制化业务研发需求,降本增效。

限时活动,数量有限🔥

关注【CSDN云原生】公众号,回复【图书】

邀请好友助力即可免费领图书,赶快参与吧!


聚焦云原生新技术、新实践,帮助开发者群体赢在开发范式转移的新时代。欢迎关注CSDN云原生微信公众号~  

Logo

这里是“一人公司”的成长家园。我们提供从产品曝光、技术变现到法律财税的全栈内容,并连接云服务、办公空间等稀缺资源,助你专注创造,无忧运营。

更多推荐