spring-cloud-stream - Spring云数据流: complex parallel processors scenario?

标签 spring-cloud-stream spring-cloud-dataflow

是否可以使用预设模块在 Spring Cloud Data Flow 中实现复杂的并行处理器流?

例如:

处理器 1、2、3 都是预设模块(httpclient 等)。处理器 1 和 3 将同时从源获取相同的消息,然后处理器 1 将输出通过管道传输到处理器 2。处理器 2 和 3 完成后,它们同时将输出通过管道传输到处理器 4。处理器 2 的输出无关紧要,处理器 4 只获取 3 的输出是可以的。但是,处理器 3 应该仅在处理器 2 完成时向处理器 4 发送消息。

enter image description here

这可以使用 Spring Cloud Data Flow 来完成吗?

最佳答案

使用点击和指定目的地,您可以到达那里的大部分路线。

Flow

DSL 看起来像:

main-stream=source: http | processor1: script | processor2: script > :destination
second-stream=:main-stream.source > processor3: script > :destination
sink-stream=:destination > sink: log

处理器 2 和处理器 3 之间的同步听起来像是一种反模式。听起来更像是您需要处理器 3 从处理器 2 接收数据,而不是并行工作(它只需要消息的原始副本)。

关于spring-cloud-stream - Spring云数据流: complex parallel processors scenario?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69167307/

相关文章:

apache-kafka - Kafka生产者线程不断增加

spring - spring cloud stream instanceCount 的用途是什么?

spring-cloud - 检查Spring Cloud Stream源和Sink数据内容的方法

java - Spring Cloud Dataflow 将缓冲的消息发送到输出 channel

java - 缺少流的 Spring Initializr

docker - 如何在Docker上部署Spring Cloud数据流

apache-kafka - 在Kubernetes上运行的Apache Kafka消费者组和微服务是否兼容?

java - kafka 0.8.2.2有spring支持吗?

error-handling - Kafka 错误处理 : Processor. output().send(message, kafkaTimeoutInMS) 始终返回 true 及其异步

apache-kafka - Kafka 的动态消息编排流引擎