욱'S 노트

Spring XD - 시작하기 본문

Programming/Spring XD

Spring XD - 시작하기

devsun 2015. 1. 29. 11:03

이제 Spring XD를 시작해보자.


요구사항 


최소 JDK 6 이상 설치가 가능하나 JDK 7 이상을 권고한다.


다운로드


http://repo.spring.io/release/org/springframework/xd/spring-xd/1.0.3.RELEASE/spring-xd-1.0.3.RELEASE-dist.zip


스프링 리파지토리로 가서 다운로드 하자. 일단 이 글을 작성할때의 최신 릴리이즈 버젼은 1.0.3이다. 적당한 위치에 압축을 해제하자.

용량이 상당하다. 265MB 이다.


설치하기


Spring XD는 두가지 모드로 구동할 수 있다. 하나의 테스트 및 개발을 위한 싱글노드 런타임이며, 다른 하나는 멀티노드 프로세싱을 위한 분산 런타임이다. 일단 시작하는 장이니까 싱글 모드로 구동하겠다. 


런타임 실행 및 XD Shell


싱글노드는 가장 쉽다. 원하는 모든 것을 싱글 프로세스에서 실행시켜준다. 시작하기 위해 다음의 커맨드를 실행하자.


$ ./xd-singlenode



느낌상 정상적으로 수행된 것 같다. 그럼 다른 터미널 창을 열고 다음과 같은 커맨드를 수행해보자.


$ ./xd-shell



쉘은 Spring XD가 클라이언트로 노출한 REST API를 쉽게 사용할 수 있는 프론트엔드이다. 대상이되는 Spring XD 서버의 URL을 구동시 확인할 수 있다.


Stream 만들기


Spring XD에서 소스로부터 이벤트 기반 데이터를 획득 및 다수의 프로세서로 전달하기 위해서 Stream을 정의한다. XD Shell에서 stream create 명령을수행해서 생성할 수 있다. Stream은 단순한 DSL로 정의한다. 예를들면 다음과 같다.

xd:> stream create --name ticktock --definition "time | log" --deploy


XD 서버쪽에는 다음과 같은 로그가 생성될 것이다.


위와 같은 명령는 time | log라는 DSL 표현을 기반하여 ticktock이라는 이름의 stream을 정의한 것이다. DSL에서 | 는 소스와 대상을 연결한다는 의미이다. Stream 서버는 모듈 디렉토리에서 time과 log 정의를 찾는다. 그리고 그것들을 이용하여 Stream을 설정한다. 이 간단한 예제에서 time 소스는 단순히 매초당 현재 시간을 전송하고, log sink는 결과를 logging 프레임웍을 이용하여 INFO 레벨로 출력한다. 마지막에 보면 --deploy 라는 플래그가 있는데 이것은 즉시 stream을 배포하라는 의미이다.  


Stream을 멈추고 제거하기 위해선 아래와 같은 명령을 수행하면 된다. 


xd:> stream destroy --name ticktock





'Programming > Spring XD' 카테고리의 다른 글

Spring XD - 아키텍처  (0) 2015.01.30
Spring XD - DSL  (0) 2015.01.30
Spring XD - 어플리케이션 설정  (0) 2015.01.29
Spring XD - 분산모드 시작하기  (0) 2015.01.29
Spring XD - 소개  (0) 2015.01.29
Comments