控制节点组件是用于对业务中作业的运行进行控制的组件,包括Fork组件、Join组件、跨组织节点组件和分支节点组件。
表-1 控制节点组件介绍
组件 |
说明 |
Fork、Join |
Fork组件和Join组件自身不会参与任何作业的数据处理,且Fork组件与Join组件在业务流程中需成对出现
例如,在业务流程画布中,当某个作业A的后续为两个需要并行执行的作业B和作业C,且两个作业均执行完成后才可继续执行后续作业D时,需要在作业A后添加Fork组件节点,然后从Fork组件节点连接至作业B和作业C,之后将作业B与作业C连接至Join组件节点,再将Join组件连接至作业D |
跨组织节点 |
跨组织节点提供了事件触发调度的能力,包含发布、接收两种子类型,分别承担消息发布和接收处理的职责。通过引入跨组织节点,可以解决存在依赖关系的业务流程的启动顺序问题
例如,当前有两个业务流程A和B,流程B依赖流程A的分析结果,因此必须在流程A运行结束后,再启动流程B,若仅依赖手动启动,会存在启动不及时且使用不便的问题。此时可以通过跨组织节点来解决,在流程A的末尾连接跨组织(发布)节点,在流程B的起始位置连接跨组织(接收)节点,并配置流程B的接收节点监听流程A的发布节点,流程A运行结束后会发布消息,流程B的接收节点会接收并处理消息,最终启动流程B |
分支节点 |
与Fork-Join一样,分支(Decision)节点也是数据开发提供的逻辑控制类节点中的一种。通过定义分支条件,在实际运行时可以根据分支条件的内容是否为true,决定分支下游的走向 例如,在业务流程画布中,当某个作业A的后续为两个需要二选一执行的作业B和作业C。此时需要在A作业之后添加分支节点,将分支节点与下游B、C节点相连接,并配置分支节点的属性,即分别对B节点和C节点配置执行的分支条件。当两个条件中任何一个结果为true,则执行对应的下游分支节点;当两个条件均满足条件时,选择第一个节点执行;当两个节点均不满足条件时,整个业务流程的执行会跳到最后直接结束,后续节点均不再执行 |
跨组织节点说明: · DI作业内置了跨组织(发布)节点的能力,任务结束时,发布消息。 · 跨组织(发布)节点可以不被任何节点监听,独立存在。 · 跨组织(接收)节点支持两种监听类型,分别是跨组织(发布)节点和DI作业。 · 包含跨组织(接收)节点的业务流程,仅响应流程启动后监听目标发布的消息,忽略历史消息。 · 跨组织(接收)节点启动业务流程时,会放弃提交处于运行状态的作业。此时该条消息已经被消费,任务结束后等待后续消息进行调度。 跨组织(发布)节点存在如下使用限制: · 必须与其他离线作业成组使用 · 同组内有且仅有一个父节点 · 父节点不能为跨组织(发布)节点 跨组织(接收)节点存在如下使用限制: · 必须与其他离线作业成组使用 · 必须是组内的起始节点 · 同组内有且仅有一个子节点 |