0

저는 모든 어플리케이션을 관리하기 위해 Spring Cloud Data Flow 서버를 사용하려고합니다. 또한, 나는 봄에 모든 새로운 있습니다.소스도 싱크도 아닌 앱을 작성할 수 있습니까?

SFTP에서 파일을 읽고 S3에 쓰는 응용 프로그램을 작성하고 싶습니다. 파일은 매우 클 수 있으며 (각 500MB), 메시지 페이로드로 전달할 수 있습니다. 내가하는 모든 일이 SFTP에서 읽히고 S3에 쓰기 때문에 나는 단일 응용 프로그램이 SFTP에서 로컬 파일로 파일을 읽은 다음 S3에 로컬 파일을 업로드하거나 브로커를 SFTP에서 직접 스트리밍함으로써 브로커를 피할 수 있다고 생각했습니다. S3로.

나는 그런 응용 프로그램을 만드는 방법을 놓치고 있습니다.

답변

1

음, 여기

  1. 가지의 몇 당신이 설명하는 것은 싱크 또는 다른 말로 프로세서 (단순히 소스 및 싱크를 캡슐화 또 다른 고정 관념 소스모두있는 응용 프로그램입니다).
  2. Spring Cloud Stream은 복잡한 플로우를 구현하기 위해 Spring Integration 구성을 지원하고 사전 제작 된 어댑터/커넥터를 사용합니다. 이러한 어댑터 중 하나는 streaming SFTP 어댑터입니다. SFTP 어댑터를 사용하면 SFTP에서 데이터를 메모리로 읽어들이는 대신 스트림 할 수 있습니다.

기본적으로 Spring Integration이 제공하는 기존 구성 요소를 사용하여 원하는 것을 정확히 수행 할 수 있습니다.

문서를 살펴보고 더 많은 도움이 필요하면 알려주십시오.

+0

스프링 통합 채널 어댑터를 기반으로하는 스프링 클라우드 태스크라고 할 수 있습니다. –

+0

@ oleg-zhurakousky 내 앱이 왜 프로세서입니까? 나는 그것을 보는 방식으로 소스도 싱크도 아니다. 프로세서는 소스와 싱크 모두이므로 브로커와 메시지를주고 브로커는 메시지를 보냅니다. 나는 메시지를 보내거나 받고 싶지 않고 중개인을 묶고 싶지 않다. – polo

+0

글쎄. . . 내가 설명하려고했던 것은 Spring Cloud Stream의 일반적인 맥락에서 Source (입력, SFTP) 및 Sink (출력, S3)를 프로세서로 사용하는 앱이다. 즉, 나는 당신의 요지를보고 동의합니다. 실제로 필자는 스프링 통합과 유선 어댑터를 사용하여 스프링 - 인티그레이션 된 스프링 부트 앱 (스프링 클라우드 스트림 앱이 아님)이 필요한 모든 것이 필요하다고 말하고있다. –