Bootstrap

分布式任务调度与计算框架:PowerJob 工作流 05

PowerJob 工作流

什么是工作流?

工作流描述了任务与任务之间的依赖关系,比如我现在有 A、B、C、D 四个任务,我希望 A 任务运行完毕后才开始运行 B、C 任务,最后再运行 D 任务。这就形成了一个依赖关系,可以通过有向无环图(DAG)来描述这个关系,如下图所示。

在这里插入图片描述

主界面

直观地展示当前系统所管理的所有工作流信息,并提供相应的运维方法。

在这里插入图片描述

新增工作流[详细视频教程]

PowerJob工作流

点击右上角按钮 新建工作流,即可录入新的工作流,具体界面和说明如下所示。

  • 工作流名称:名称,无实际业务用途,请尽量精简字段

  • 工作流描述:描述,无实际业务用途,请尽量精简字段

  • 定时信息:该工作流的触发方式的触发方式,包含时间表达式类型选择框和时间表达式输入框

    • CRON -> 填写 CRON 表达式(在线生成网站
    • API -> 不需要填写任何参数,表明该任务由 OpenAPI 触发
  • 最大实例:该工作流同时执行的数量

  • **任务依赖关系:**提供编辑界面可视化操作,绘制 DAG(有向无环图),配置工作流内各个任务的依赖关系

DAG 操作指南

编辑依赖关系

v4.0.0 以后支持节点的自由拖拉拽,不用再点点点了,哈哈哈 ~

  • 添加节点:点击 DAG 编辑框左上方的 “导入任务”,导入当前存在的任务(需要提前在 任务管理界面 录入任务),生成 DAG 的节点
  • 连接节点:点击起始节点的任意一个锚点摁住不放,拖动鼠标连接到另一个节点的任意一个锚点即可
  • 删除节点:选中需要删除的节点,按退格键( 注意:windows 下使用退格键 [Backspace],macOS 下使用删除键 [delete]
  • 删除边:选中需要删除的边,按退格键( 注意:windows 下使用退格键 [Backspace],macOS 下使用删除键 [delete]
编辑节点信息

点击需要编辑的节点,在右侧会弹出一个编辑框,如下图所示\

在这里插入图片描述

  • 任务名称:当前节点引用的任务名称,点击可编辑(支持输入名称进行模糊搜索)
  • 节点名称:节点的名称,无实际业务用途,在能明确表示节点背后的业务逻辑的情况下请尽量精简字段
  • 节点参数:节点的参数配置,当这个信息不为空的时候使用这个参数覆盖当前节点所引用的任务所配置的参数信息
  • 是否启用:未启用的节点将会直接跳过
  • **失败跳过:**当这个节点执行失败的时候不会打断整个工作流的执行

复制工作流

如果需要配置一个和现有工作流相似度很高的工作流,墙裂建议使用工作流的复制功能,省时又省心 ~ 😎

点击复制按钮即可 ~

在这里插入图片描述

工作流实例

v4.0.0 版本大幅提升了工作流的运维能力 !

主界面

在这里插入图片描述

工作流实例详情

在这里插入图片描述

其中上方为工作流实例的基础信息,下方为实例的 DAG 信息,点击节点可以查看对应的任务实例详情信息。

右上方有三个功能按钮用于工作流的运维

**刷新:**重新获取当前工作流实例的信息

重试:从当前工作流实例失败(会忽略失败跳过的节点)的节点开始继续往后执行

停止尝试停止当前工作流实例中所有正在执行的任务,并终止整个工作流

DAG 界面左侧上方还有个相对比较隐蔽的功能按钮 📌 标记成功,如下图所示

在这里插入图片描述

选中执行失败的节点,点击标记成功后会将其 DAG 中的节点状态置为成功(不会更改对应任务实例的状态,所以点击节点看到的任务实例详情还是失败)

在这里插入图片描述

的节点状态置为成功(不会更改对应任务实例的状态,所以点击节点看到的任务实例详情还是失败)

在这里插入图片描述

该功能主要用于搭配工作流实例的重试功能实现灵活运维 (想跳过某个失败的节点进行重试)。

;