说说流程编排

作者: 奔跑的newbee | 来源:发表于2020-03-15 12:49 被阅读0次

(如有胡扯,欢迎拍砖)

1、什么是流程编排?

流程编排即可以通过对规范化的组件进行灵活组装,快速得到一个目标流程。

流程编排的归类大致可以分为

业务流程编排(也可以叫工作流编排),代表产品有JBPM
微服务编排,代表产品Conductor
服务内组件流程编排,代表产品有Camel(Camel同样可以用于服务编排)
接下来我会重点描述第三种服务内组件流程编排,下文的“流程编排”也特指此项。

2、流程编排发展的实际意义和必然性

流程编排的意义在于提升复杂业务场景下的开发效率。

这里同时限定了流程编排的应用范围,即复杂业务场景。在简单场景下,如果仍然放在编排框架下来做有可能会因为编排框架的种种约束导致开发成本变高,也就是我们通常说的过度设计。而常见的复杂场景如计费场景,需要灵活的组装计算各个计费项,以及用户的费用相关的权益,得出最终想要的结果;中台场景,中台系统往往需要处理多个业务场景,甚至多条业务线的逻辑,如果到处都充斥着面条代码和if else分支,必然让整个代码结构十分混乱,维护的人也是苦不堪言。

近几年对中台的提倡和发展,也是促使流程编排的技术方案得到越来越多重视的重要原因。对于提升公司内多业务场景的开发效率,中台是必不可少的一个抓手,也是必然的发展方向。中台发展的必然性同时也催生流程编排技术发展的必然性。关于中台发展的必然性,下面发表一点私人的推理,熟悉科幻的同学可能知道这三条“公理”的灵感源头_

-业务或者集团在发展过程中必然会有越来越多的场景需要实现
-项目和个人要想获得更大的发展,必须让系统具有更强大、更广泛的能力输出
-对于业务发展,用最小的成本实现功能,永远是最优选择

3、到底要怎么做流程编排?

流程编排的含义是很广泛的,我们利用一些成熟框架,如Camel,进行完全规范化的编码或配置算是流程编排。我们平时利用的一些规则引擎,状态机等是流程编排,甚至我们写的一些责任链、策略模式等都属于流程编排。而流程编排的能力是建立在流程编排引擎的基础之上。

这里说一下我想要的流程编排引擎的能力

1.可以根据不同输入灵活路由
2.可以通过可视化界面或xml文件进行流程的组装
3.各个组件具备通用性,可以被最大限度的复用
4.可以灵活配置流程引擎入参且根据不同场景解析个性化出参(灵活解析出参的能力往往是难点)

我认为这样一个流程编排引擎需要具备的核心功能是
1.路由引擎,流程编排的灵魂
2.组件化规范,统一规范的组件是流程可被编排的基础
3.参数解析器,要做到通用性,对于入参和出参强大的解析能力必不可少

4、重复造轮子还是使用通用引擎的框架?

流程编排引擎包含的范围很广,但是我们通常都会建设一套贴近业务场景,在一定领域或者某些领域内使用的引擎,使之更具备易用性且学习成本更低。这也是大多数项目都在独立建设流引擎,并且Camel等产品没有彻底流行起来的原因。尽管如此我认为对于相近的业务场景,完全有可能建设一套公共的流程引擎框架,所有业务都可使用,而非各自为政,轮子满天飞。

相关文章

  • 说说流程编排

    (如有胡扯,欢迎拍砖) 1、什么是流程编排? 流程编排即可以通过对规范化的组件进行灵活组装,快速得到一个目标流程。...

  • 服务编排之 Zeebe

    Zeebe是一个用于微服务编排(Orchestration)的工作流引擎。 首先说说什么是编排。微服务的编排实际上...

  • 让我们来实现一个轻量级流程编排引擎-模型&设计

    什么是流程编排? 使用各种“能力”进行编排来完成某一业务,各个“能力”被有序的编织起来,聚合成一条特定的执行链。 ...

  • 谈谈我所理解的业务流程编排

    名词 能力 指完成某一单一的业务行为,比如限购,限流等,流程编排中被编排的即“能力”,他可以由一个或者一组执行组件...

  • 面试案列

    1.说说你公司的网站架构 2.说说DNS解析流程 3.说说ARP解析流程 4.如何检查80端口是否开启 5.lin...

  • Activiti架构分析及源码详解

    Activiti架构分析及源码详解 引言 工作流引擎,应用于解决流程审批和流程编排方面等问题,有效的提供了扩展性的...

  • 微服务架构之基于容器编排的Dev/Ops流程

    我们整个 DevOps 流程是建立在容器编排的基础上的,目的是简化流程和实现自动化 CI/CD 和自动化运维。当中...

  • 「审批流&业务流配置」流程编排整体介绍

    (一)流程整体介绍 中间画布区是图形化的配置,所以神笔aPaaS中“流程编排”是一种通过简单拖拉拽、以及一些基础的...

  • Android设计模式:模板方法模式

    模板方法模式 作用:在父类中编排主流程,将步骤实现延迟到子类去实现。 背景 Jack的水果店的售卖流程 通过观察我...

  • SAP订单编排和流程增强概述

    SAP产品里的订单处理,无论是On-Premises解决方案还是云产品,我认为归根到底可以概括成四个字:订单编排,...

网友评论

    本文标题:说说流程编排

    本文链接:https://www.haomeiwen.com/subject/dlohehtx.html