conductor 概念

Definitions

conductor定义类似于OOP范式或模板中的类定义。您只定义一次,并将其用于每个工作流执行。定义与执行是1:N关系。

Tasks

task是构建workflow的块,workflow中至少有一个task。task可以分为一下两种:

Systems tasks  执行by Conductor server.

Worker tasks    执行by your own workers.

Workflow:

Workflow是流程流的容器。它可以包括几种不同类型的task、sub_workflow、相互连接的输入和输出,以有效地实现期望的结果

Workflow Definition

Workflow是使用基于JSON的DSL定义的,并包含一组作为工作流的一部分执行的任务。这些任务要么是在远程机器上执行的控制任务(fork、条件等),要么是应用程序任务(例如,对文件进行编码)。

Task Definition

任务定义帮助定义任务级参数,如输入和输出、超时、重试等。

     所有任务在被活动工作流使用之前都需要注册。

     任务可以在多个工作流中重用。

System Tasks

系统任务在Conductor服务器的JVM中执行,并由Conductor对其执行和可伸缩性进行管理。

Conductor provides an API to create user defined tasks that are executed in the same JVM as the engine. See WorkflowSystemTask interface for details.

Worker Tasks

工作任务由应用程序实现,并在独立于Conductor的环境中运行。worker任务可以用任何语言实现。这些任务通过REST/gRPC与指挥服务器通信,以轮询任务并在执行后更新其状态。

在蓝图中,工作任务由简单的任务类型标识。

发布了184 篇原创文章 · 获赞 32 · 访问量 11万+

猜你喜欢

转载自blog.csdn.net/wjandy0211/article/details/103287954
今日推荐