Spring数据流有2个源为一个处理器/接收器供电

时间:2017-04-26 00:50:31

标签: spring-xd spring-cloud-stream spring-cloud-dataflow

我正在寻找一些关于为特定用例设置Spring Data Flow流的建议。

我的用例:

我有2个RDBMS,我需要比较针对每个运行的查询结果。查询应该大致同时运行。根据比较结果,我应该可以通过我创建的自定义电子邮件接收器应用发送电子邮件。

我设想流图看起来像这样(抱歉油漆): enter image description here

问题在于,据我所知,SDF不允许使用2个源组成流。在我看来,这样的事情应该是可能的,而不会过度推动框架的限制。我正在寻找能够在SDF框架内工作时提供良好方法的答案。

我使用Kafka作为消息代理,数据流服务器使用mysql来保存流信息。

我考虑创建一个自定义源应用程序,它会轮询两个数据源并在输出通道上发送消息。这将消除我对2个源的要求,但看起来它需要大量的jdbc源应用程序的自定义。

提前致谢。

1 个答案:

答案 0 :(得分:4)

我还没有尝试过这个,但你应该可以使用命名目的地来实现这一点。看看这里:http://docs.spring.io/spring-cloud-dataflow/docs/current-SNAPSHOT/reference/htmlsingle/#spring-cloud-dataflow-stream-advanced

stream create --name jdbc1 --definition "jdbc > :dbSource"

stream create --name jdbc2 --definition "jdbc > :dbSource"

stream create --name processor --definition ":dbSource > aggregator | sink"