基于低代码的工作流引擎后端设计(工作流 代码)
虽然是针对运维方向的流程引擎的设计,但其他行业也可以借鉴该思想,基本是相同的,只是实现的业务不同,但从上层看是基本一致的
主要分享低代码、微服务、容器化、SAAS、系统架构方面的的内容,希望大家点赞,评论,关注。
基于低代码技术实现运维平台规则引擎技术方案如上所示,主要有RES&规则执行器、ris&规则解析引擎组成,解析引擎负责可视化规则生成的JSON数据模型,执行模型根据业务数据、规则负责规则的整个执行活动,同时跟踪规则的执行状态及执行轨迹记录
- RIS&规则解析引擎解析使用者通过低代码自定义的JSON数据模型,得到节点(审批节点、判断节点、场景节点)、路径去向及参数配置,并存储起来,同时提供各种模型元素的编辑及查询API服务能力
- Node节点,可以是任务执行节点、审批节点,同时需要解析不同节点类型的元数据
- Paht路径流向,节点可以延伸出多个流向,每条路径需要设置执行的条件,执行的时候需要有业务数据填充
- Ny自循环节点,是多任务的容器,可以设置通过率,直到任务执行到满足条件才能跳出自循环节点,执行后续规则
- Sa场景关联,是实现多场景组合的节点,在该节点可以设置数据的映射,辅助元素参数,实现更复杂的规则场景
- RES&规则执行器通过业务数据及规则解析引擎解析的规则模型驱动规则的执行,同时需要进行业务数据的封装、参数的填充、规则的判断及其他业务逻辑,同时在规则执行的过程中需要记录规则节点状态及执行轨迹
- 通过平台前端提供的低代码定制业务规则,最终形成JSON数据模型,通过API传递给后端的规则引擎服务。
业务预处理服务判断执行类型,传递给执行引擎、解析引擎,如果是规则定义,则传递给解析RIS,解析引擎通过分析JSON数据模型,得到规则的每个元素对象,有开始节点、结束节点、审批节点、服务部署节点、自循环节点、资源巡检节点、路径流向及场景关联,然后做存储处理,同时提供查询服务API接口,如果是执行引擎,则需要组装业务数据及获取规则引擎获取需要执行的规则元素,然后驱动规则的执行,并获取执行后的结果,并根据结果及当前的规则对象类型进行后续动作的判断,直到整个规则的结束,同时记录每个节点的执行明细及整个业务规则的执行轨迹。
- 术语说明表
ny | node cycle | 节点自循环 | 节点任务容器 |
sa | scene association | 场景关联 | 多场景关联 |
ris | rule inspect server | 规则解析引擎 | 负责规则解析 |
res | rule execution server | 规则执行引擎 | 负责规则执行 |
主要分享低代码、微服务、容器化、SAAS、系统架构方面的的内容,希望大家点赞,评论,关注。