Spring Cloud数据流内部通信

时间:2019-08-26 20:23:47

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

尝试将Spring Cloud数据流用于数据管道,其中源从其余流中读取数据,接收器会将其保存到数据库中。当前,我使用Spring Webflux进行了POC获取流数据并将其保存到DB 。尝试对Spring Cloud数据流执行相同的操作,并尝试了解Source / Processor / Sink之间如何正确通信。在我的方案中,它是一个Batch /短期应用程序,该应用程序定期运行并使用其余端点的数据。我查看了文档以了解源和接收器如何通信,但找不到任何信息。因此,在应用程序寿命短的情况下,源和接收器如何传输数据?我的理解是它们每个都在单独的JVM中运行,因此它们需要一种通信/传输数据的方式。     1)我的理解正确吗?     2)是通过消息传递吗?

1 个答案:

答案 0 :(得分:1)

您的问题更为笼统,因为它导致我们为什么要对流应用程序使用消息传递系统。因此,请搜索为什么我们需要消息传递系统。

Spring Cloud Data Flow利用Spring Cloud Stream运行流应用程序。 Spring Cloud Stream提供了活页夹实现,可将事件驱动/流应用程序绑定到消息传递系统(RabbitMQ,Apache Kafka等)中。

鉴于所有这些,这还取决于您在应用程序中需要什么。特别是,如果您没有分发流应用程序,并且不一定需要在生产者和使用者之间建立松散的耦合,则可以在不使用消息传递系统的情况下构建应用程序。