1

我正在構建基於彈簧雲的微服務ML管道。 我有一個數據攝入服務,它(當前)從SQL獲取數據,這些數據需要預測服務使用。用於大數據的微服務之間的通信

一般認爲寫入應該使用使用kafka/rabbitmq的基於異步消息的通信。

我不確定的是我該如何編排這些服務?

我應該使用調用攝入以啓動管道的API網關嗎?

+2

Spring雲數據流:http://cloud.spring.io/spring-cloud-dataflow/? –

+0

我對此很新。如果我使用春季雲數據流,我是否可以單獨使用這些服務?使用一個獨立於數據流管道的服務,比如說休息端點? –

回答

3

通常情況下,您將建立一個服務與休息端點(春季引導)攝取數據。然後,該服務可以在api網關(Zuul,Spring Cloud)之後多次部署,以關注路由。這是默認的彈簧雲微服務設置。攝取服務然後可以轉換數據並將其生成到RabbitMQ或Kafka。我建議使用Spring Cloud Stream與隊列進行交互,它是RabbitMQ和Kafka之上的抽象,可以使用starters/binders進行配置。

Spring Cloud Dataflow是一種聲明式的編排隊列的方法,同時也負責部署多個雲服務/平臺。這也可以使用,但可能會增加您的用例的複雜性。

+0

感謝您的回答,其相當豐富。 –