본문 바로가기
카테고리 없음

SOA 서비스지향 아키텍처 모델 개념 및 구현기술

by ℥ℨℳµ 2022. 10. 7.
반응형

SOA 서비스지향 아키텍처는 기존의 애플리케이션 서비스를 레고블럭처럼 조합하여 새로운 서비스를 구현하는 기술입니다. 서비스 간 loosely coupled 방식으로 결합하여 시스템을 확장 통합하는 방식으로 재사용성을 높일 수 있습니다. 이 글에서는 SOA 아키텍처의 개념과 특징 및 구성형태에 대해 자세히 알아보겠습니다.

 

SOA 서비스지향 아키텍처

개념

SOA 서비스지향 아키텍처는 서비스 기반의 모듈을 구축하여 재활용성과 새로운 서비스의 개발 및 확장에 용이한 기술입니다. SOA 서비스지향 아키텍처는 서비스 중개자, 서비스 사용자, 서비스 제공자로 구성됩니다. 각 요소 간 실행순서는 아래와 같습니다.

  1. 서비스 제공자는 WSDL 및 UDDI 기술을 통해 자신의 Service를 중개자에게 등록하여 외부에서 검색할 수 있도록 정보를 제공합니다.
  2. 서비스 사용자는 마찬가지로 서비스 중개자가 제공하는 정보를 참고하여 자신이원하는 서비스를 검색합니다.
  3. 서비스 사용자는 사용하려는 서비스를 제공자로부터 서비스 받습니다.

특징

SOA는 기존의 서비스와 프로세스를 블록화하여 마치 레고처럼 서로 필요에 따라 결합하여 새롭게 재창조하는 방식입니다. 이를 블록화된 서비스는 개발자의 도움이 없거나 최소한의 도움으로 현업의 실무자가 직접 서비스 모듈을 결합하는 것이 가능합니다. 그리고 이런 재활용 가능한 모듈을 기업간에도 상화 공유하여 시너지 효과를 얻는 것이 가능합니다.

특징 설명
모듈화 각 프로세스를 기반으로 개발된 모듈들을 각각 독립된 모듈로보고 이를 설계단계부터 분리합니다. 분리된 비즈니스 로직은 서버에서 관리하고 각 프로세스 서비스만 통합할 수 있습니다.
플랫폼 의존성 제거 서비스가 구현된 플랫폼이나 기술, 언어에 의존하지 않고 상호 연결을 보장합니다. 결합시에도 성능요구나 보안수준 그리고 신뢰성을 보장합니다.
약결합 형태의 메시지 및 상태관리 서비스간 독립적으로 동작할 수 있으며 프로세스를 단순화 시킵니다. 메시지 기반의 동작으로 중복된 메시지나 비동기 처리를 통해 유연히 통신하며, 각 서비스가 전체 프로세스상에서 어떤 state를 가지는지 관리합니다.
재사용성 서로 모듈을 공유하면서 부서간 기업간 공유를 통해 재사용성을 높일 수 있습니다.

SOA 구현기술

구성형태

SOA 를 구성하는 형태는 크게 연결방식에 따라 다음의 3가지 유형으로 나눌 수 있습니다.

  • Primitive SOA: 포인트 투 포인트 형태로 연결하는 구조로 상위의 엔터프라이즈 계층이 하위의 애플리케이션을 각각 1대 다 형식으로 연결합니다.
  • Network 기반 SOA: 각 서비스 계층이 BUS를 통해 연결하는 형태로 하단의 서비스간 연결을 분산 트랜잭션 방식으로 분리 및 캡슐화 합니다.
  • Process-Enabled SOA: 프로세스 Orchestration 기반위에서 동작하는 형태로 SOA-BPM이 결합된 환경에서 활용할 수 있습니다.

구현기술

SOA를 구현하기 위한 세부 기술은 다음과 같습니다. 다음의 기술을 기본으로 Presentation, application, 서비스 계층으로 나누어 구현할 수 있습니다. 

데이터교환

XML 은 확장된 마크업 언어로 인간이 이해하기 쉽도록 구성된 구조화된 language 입니다. 이는 웹서비스나 SOAP 프로토콜 등 다양한 분야에서 활용됩니다.

SOAP

서비스기반 접근 프로토콜로서 XML을 기반으로 분산환경에서 정보교환을 목적으로 사용됩니다.

WSDL

웹서비스 기술언어입니다. 구축된 Web Service의 기능, 사용법 등을 XML 기반의 언어로 표현합니다.

UDDI

Universal Description, Discovery and Integration의 약어로 인터넷상의 웹서비스에 대한 정보를 등록 검색할 수 있는 레지스트리 서비스입니다.

ESB

엔터프라이즈 서비스 버스의 약어로 메시지를 기반으로 다수의 서비스를 약결합 방식으로 메시지를 통해 연결하여 SOA를 구현하는 미들웨어입니다. 이에 관한 자세한 정보는 아래의 이전 글을 참고 바랍니다.


이상으로 SOA 서비스지향 아키텍처 모델 개념 및 구현기술에 대해 알아보았습니다.

 

반응형

댓글