并行¶
并行 CRD 提供了一种简单的方式来定义分支列表,每个分支都接收发送到并行入口通道的相同 CloudEvent。通常,每个分支都由一个过滤函数构成,该函数用于保护分支的执行。
并行在底层创建 Channel 和 Subscription。
用法¶
并行规范¶
并行的规范有三部分
branches定义了filter和subscriber对的列表,每个分支一对,以及可选的reply对象。对于每个分支- (可选)评估
filter,当它返回一个事件时,执行subscriber。filter和subscriber都必须是Addressable。 subscriber返回的事件被发送到分支的reply对象。当reply为空时,事件被发送到spec.reply对象。- (可选)
channelTemplate定义了将用于创建Channel的模板。 - (可选)
reply定义了当分支没有自己的reply对象时,每个分支的结果发送到哪里。
并行状态¶
并行的状态有三部分
conditions详细说明了并行对象的整体状态ingressChannelStatus和branchesStatuses传达了作为此并行的一部分而创建的底层Channel和Subscription资源的状态。address被公开,以便并行可以在可寻址的地方使用。发送到此地址将针对此并行前面的Channel(与ingressChannelStatus相同)。
示例¶
通过遵循代码示例学习如何使用并行。