zeebe流程使用
本文重点介绍zeebe中涉及到的工作流概念。工作流是定义任务编排的类似流程图的蓝图。每个任务都代表一个业务逻辑,这样有序的执行就产生了有意义的结果。工作人员是完成任务所需的业务逻辑的实现。一个工作人员必须嵌入一个Zeebe客户端来与broker进行通信,否则,对其实现没有限制。您可以选择将Worker编写为微服务,也可以作为经典三层应用程序的一部分,通过命令行工具等编写为(lambda)函...
本文重点介绍zeebe中涉及到的工作流概念。
工作流是定义任务编排的类似流程图的蓝图。每个任务都代表一个业务逻辑,这样有序的执行就产生了有意义的结果。
工作人员是完成任务所需的业务逻辑的实现。一个工作人员必须嵌入一个Zeebe客户端来与broker进行通信,否则,对其实现没有限制。您可以选择将Worker编写为微服务,也可以作为经典三层应用程序的一部分,通过命令行工具等编写为(lambda)函数。
运行工作流需要两个步骤:将工作流提交给Zeebe,并创建可以从Zeebe请求作业并完成它们的作业工作者。
Sequences
最简单的工作流程是按顺序排列的任务序列。每当工作流执行到达任务时,Zeebe就会创建一个作业,该作业可以由作业工作者请求并完成。
可以将Zeebe的工作流编排视为状态机。一个工作流实例到达一个任务,Zeebe创建一个工作人员可以请求的作业。然后,Zeebe等待工人请求作业并完成工作。一旦工作完成,流程将继续进行下一步。如果工作人员未能完成工作,工作流将保持在当前步骤,并且可以重试作业,直到成功完成。
Data Flow
当Zeebe在工作流中从一个任务发展到下一个任务时,它可以以变量的形式移动自定义数据。变量是键值对,是工作流实例的一部分。
每个作业工人都可以在完成作业时读取变量并对其进行修改,以便在工作流中的不同任务之间共享数据。
Data-based Conditions
有些工作流并不总是执行相同的任务,但需要根据变量和条件选择不同的任务:
中间带有“x”的菱形是一个元素,指示工作流决定采用多种路径之一。
Events
事件代表发生的事情。工作流可以对事件(捕获事件)作出反应,并可以发出事件(引发事件)。例如:
Fork / Join Concurrency
在许多情况下,并行执行多个任务也很有用。这可以通过fork/join并发实现:
带有“+”标记的菱形表示激活所有传出路径,合并所有传入路径。
BPMN 2.0
Zeebe使用bpmn 2.0来表示工作流。BPMN是一个行业标准,它得到了不同供应商和实现的广泛支持。使用BPMN可以确保Zeebe和其他工作流系统之间可以交换工作流。
YAML Workflows
除了bpmn 2.0之外,Zeebe还支持yaml工作流格式。它可以用来快速地用文本编写简单的工作流。与BPMN不同,它没有视觉表示,也没有标准化。Zeebe在提交时将yaml转换为bpmn。
BPMN Modeler
Zeebe提供了一个免费的开源BPMN建模工具,用于创建BPMN图并配置其技术属性。Modeler是一个基于bpmn.io开源项目的应用程序。
zeebe qq交流群群号:856546010
更多推荐
所有评论(0)