Spring Integration 스프링 통합
💻 실습 : https://github.com/cusbert/spring-in-action-5th
🎯 이 장에서 배우는 내용
- 실시간으로 데이터 처리하기
- 통합 플로우 정의하기
- 스프링 통합의 자바 DSL 정의 사용하기
- 이메일과 파일 시스템 및 다른 외부 시스템과 통합하기
(이 장의 자세한 정리는 생략합니다.)
9.1 간단한 통합 플로우 선언하기
애플리케이션은 통합 플로우를 통해 외부 리소스나 애플리케이션 자체에 데이터를 수신, 전송 할 수 있다.
애플리케이션이 통합할 수 있는 리소스 중 하나가 파일 시스템이다.
9.1.1 XML 을 사용해서 통합 플로우 정의하기
9.1.2 Java 로 통합 플로우 구성하기
9.1.3 스프링 통합으로 DSL 구성 사용하기
9.2 스프링 통합의 DSL 구성 사용하기
- 채널(Channel) : 한 요소로 부터 다른 요소로 메시지를 전달한다.
- 필터(Filter) : 조건에 맞는 메시지가 플로우를 통과하게 해준다
- 변환기(Transformer) : 메시지 값을 변경하거나 메시지 페이로드의 타입을 다른 타입으로 변환한다.
- 라우터(Router) : 여러 채널 중 하나로 메시지를 전달하며, 대개 메시지 헤더를 기반으로 한다.
- 분배기(Spliter) : 들어오는 메시지를 두개 이상의 메시지로 분할하며, 분할된 각 메시지는 다른 채널로 전송된다.
- 집적기(Aggregator) : 분배기와 상반된 것으로 별개의 채널로부터 전달되는 다수의 메시지를 하나의 메시지로 결합한다.
- 서비스 액티베이터(Service activator) : 메시지를 처리하도록 자바 메서드에 메시지를 넘겨준 후 메서드의 반환값을 출력 채널로 전송한다.
- 채널 어댑터(Channel adapter) : 외부 시스템에 채널을 연결한다. 외부 시스템으로부터 입력을 받거나 쓸 수 있다.
- 게이트웨이(Gateway) : 인터페이스를 통해 통합 플로우로 데이터를 전달한다.
📌 요약
- 스프링 통합은 플로우를 정의할 수 있게 해준다. 데이터는 애플리케이션으로 들어오거나 나갈 때 플로우를 통해 처리 할 수 있다.
- 통합 플로우는 XML, Java, Java DSL 을 사용해서 정의할 수 있다.
- 메시지 게이트웨이와 채널 어댑터는 통합 플로우의 입구나 출구 역할을 한다.
- 메시지는 플로우 내부에서 변환, 분할, 집적, 전달될 수 이씅며, 서비스 액티베이터에 의해 처리될 수 있다.
- 메시지 채널은 통합 플로우의 컴포넌트를 연결한다.
참고
반응형