将控制消息与 Collector 节点配合使用

您可以将控制消息发送到 Collector 节点,以控制如何将完整的消息集合传播到消息流中的其他节点。

准备工作

此任务假定您已创建包含 Collector 节点的消息流。 有关更多信息,请参阅 创建使用消息集合的流

关于此任务

您可以使用发送到 Control 终端的消息,控制何时将完成消息集合传播到其他节点进行处理。 确切的行为取决于您为 收集器 节点上的 事件协调 属性选择的设置。 如果您希望使用控制消息传播已完成消息集合,那么必须将事件协调属性设置为下列其中一个值:
  • All complete collections
  • First complete collection
在这些情况下,完成消息集合在控制消息到达之前会保留在队列中。 如果将 事件协调 设置为All complete collections将队列上保留的所有消息集合传播到 Out 终端。 如果将 事件协调 设置为First complete collection,仅将队列上的第一个消息集合传播到 Out 终端。 如果队列里没有已完成的消息集合,下一个完成的消息集合会直接传播到 Out 终端。

超过了集合到期值的未完成消息集合将被立即传播到 Expire 终端,而无论事件协调如何设置。

如果要在经过设定的时间后传播任何完整的消息集合以进行进一步处理,请将 TimeoutNotification 节点连接到 Collector 节点的 Control 终端。 您可以使用 TimeoutNotification 节点发送控制消息以传播消息集合,以确保在合理时间内处理消息或调度处理任务。

有关使用 TimeoutNotification 节点驱动消息流的更多信息,请参阅 自动生成消息以驱动流

或者,您可以通过将输入节点连接到 Collector 节点的 Control 终端,使用来自另一个应用程序或消息流的消息来传播完整的消息集合。

您可以将任何消息发送到 Collector 节点的 Control 终端。 集成节点不会对 Control 终端上接收到的消息进行检查,而是在接收时将其废弃。