SOA 프로젝트를 하다보면 Mash up과 Composition를 혼용해서 쓰는 사람들이 종종있다.
먼저 유래부터 살펴보면 SOA 사상이 먼저 나온후에,
WEB 2.0 이란 사상이 대두 되고, SOA의 무거운 부분과 복잡성을 제외하고, 단순성과 편의성을 위주로 OPEN API라는 개념이 나왔다.
SOA에서 통상적으로 웹서비스로 구현되는 서비스를 JSON이나 PLAIN OLD XML등과 같이 경량의 사용하기 쉬운 메세지 포맷을 이용해서 OPEN API라는 것이 개발되었고, 이 오픈 API를 조합하여 새로운 기능을 만들어 내는것을 MASH UP이라고 한다.
SOA | WEB 2.0 | |
컴포넌트 개념 | 웹서비스 기반의 서비스 | 경량 기반의 서비스 |
서비스 조합 | Composition (Orchestration) | Mash up |
그러면 차이가 무엇일까?
다시 족보부터 따져 보자면 SOA는 기업을 위한 아키텍쳐에서 부터 출발했고 WEB 2.0은 서비스 애플리케이션에서부터 시작되었다.
IBM,BEA,ORACLE등을 선두로 하는 벤더에서 주창되는 아키텍쳐가 SOA이고, 구글이나 아마존, 야후와 같은 서비스 기업에 의해서 주창되는것이 WEB 2.0 사상이다.
사상 처럼 SOA의 서비스는 대부분이 비지니스적인 의미를 갖는다. 대부분의 서비스가 UI를 가지기보다는 비지니스 컴포넌트로써의 의미를 가지고, WEB 2.0의 서비스는 맵이나, 뉴스, 가젯 등등과 같이 UI 성격을 갖는 서비스가 대다수이다.
SOA에서의 Composition은 서비스들을 조합하여 새로운 서비스를 만들어 내는 것으로, 이 새로운 서비스는 재 사용이 가능하고 다시 Composition이 가능하다. 반면 Mash up은 한번 조합이 되서 새롭게 구성된 서비스는 다시금 조합이 어렵다. (물론 아닌 경우도 있지만....) Mash up은 기존 서비스를 조합하여 새로운 화면을 만들어서 자신의 서비스 사이트에 나타내기 위한것이기 때문에, 근본적으로 재활용성에 큰 비중을 둔것이 아니다.
반면 SOA는 컴포넌트 조합을 통해서 다시금 재 사용을 하는 것을 전제로 하기 때문에 재 사용성의 여부에서 Mashup과 Composition의 차이를 볼 수 있다.
'아키텍쳐 > SOA' 카테고리의 다른 글
SOA 시스템 설계에서 가장 큰 실수 (0) | 2009.03.16 |
---|---|
OMG released SOAML draft (0) | 2009.01.16 |
SOA 가 어려운 이유.. (0) | 2008.11.12 |
관심이 가는 오라클 제품들 (0) | 2008.10.15 |
2008년 SOA 전망 (0) | 2008.01.10 |