拓扑任务是一种特殊的任务,是通过事件触发的任务集合。拓扑任务中的任务执行流程均起始于开始节点,终止与结束节点,任务的执行流程形成一张有向无环图。

拓扑任务本身可以通过 CRON 表达式或者事件触发,但其中的任务节点必须符合以下要求:

  • 触发方式必须是事件触发。

  • 通信方式必须是回调 CALLBACK。

  • 任务节点可以是简单任务、集群任务或其它拓扑任务。

一个子任务允许出现在不同的拓扑关系中,由于所属拓扑关系不同,执行时携带的上下文也不相同,不会产生交叉影响。即使手工或通过事件单独触发一个子任务,由于没有对应的图实例,也不会影响拓扑关系中的其他任务。

拓扑任务元素说明

开始与结束节点

所有拓扑任务有且仅有一个开始节点和一个结束节点。任务执行流程从开始节点起始,执行到结束节点终止。二者成对出现。

并行网关

并行网关用来在流程中实现并发,成对出现。一对并行网关间的所有分支被同时执行,不进行条件判断。并行网关的一个分支执行完毕后,需要等待其他分支全部执行完流程才会走到下一个节点。使用方法,参见 使用并行网关

条件网关

条件网关,即排它网关,也叫异或(XOR)网关,用来在流程中实现决策,成对出现。一对排它网关包括一个判断条件和两个执行分支,分别对应 true 和 false 两个判断结果。判断结果为 true 的分支将被执行。使用方法,参见 使用条件网关

分片网关

分片网关根据设定的分片维度对任务数据进行拆分,动态生成需要执行的分片数,成对出现。在拓扑图中使用分片网关时,需要在分片网关的开始节点配置分片维度。拓扑任务执行过程中,会根据拓扑任务执行上下文获取对应的分片配置,动态生成需要执行的分片。使用方法,参见 使用分片网关

拓扑任务示例

topo示例