IT Memory Note

[정보처리기사] 통합 구현 : 내외부 연계 모듈 구현 본문

자격증/정보처리기사

[정보처리기사] 통합 구현 : 내외부 연계 모듈 구현

h00ddu 2024. 8. 9. 07:48

 

 

2️⃣ 연계 모듈 구현 환경 구성 및 개발

 


(1) 연계 모듈 기능 구현

 

  • 개발하고자 하는 응용 소프트웨어왕 연계 모듈 간의 세부 설계서를 확인하여 일관되고 정형화된 연계 기능을 구현할 수 있음
  • 연계 모듈 기능 구현은 주로 EAI/ESB 방식과 웹 서비스 방식으로 구분

(2) EAI(Enterprise Application Integration)

 

1. EAI의 개념

 

  • 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션 간의 정보를 전달, 연계, 통합이 가능하도록 해주는 솔루션
  • EAI를 사용함으로써 각 비즈니스 간 통합 및 연계성을 증대시켜 효율성을 높여줄 수 있으며 각 시스템 간의 확장성을 높여줄 수 있음

 

EAI의 구성도

 


2. EAI 구축 유형

 

구축 유형 개념도 설명
포인트 투 포인트
(Point-to-Point)
가장 기초적인 애플리케이션 통합 방법으로 1:1 단순 통합 방법
장점 : 솔루션을 구매하지 않고 개발자 간의 커뮤니케이션을 통해서도 통합 가능
허브 앤 스포크
(Hub & Spoke)
단일한 접점의 허브 시스템을 통하여 데이터를 전송하는 중앙 집중식 방식
허브 장애 시 전체 장애 발생
메시지 버스
(Message Bus)
애플리케이션 사이에 미들웨어(버스)를 두어 연계하는 미들웨어 통합 방식
 뛰어난 확장성과 대용량 데이터 처리 가능
하이브리드
(Hybrid)
그룹 내는 허브 앤 스포크 방식을 사용하고, 그룹 간에는 메시지 버스 방식을 사용하는 통합 방식
 그룹 내 환경에 맞는 작업 가능 

 


 

(3) ESB(Enterprise Service Bus) 방식

 

1. ESB의 개념

 

  • 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션들 간을 하나의 시스템으로 관리 운영할 수 있도록 서비스 중심의 통합을 지향하는 아키텍처
  • 미들웨어(Bus)를 중심으로 각각 프로토콜이 호환할 수 있도록 애플리케이션의 통합을 느슨한 결합 방식으로 지원하는 방식

ESB의 구성

 

※ 느슨한 결합(Loosely Coupled) : 특정 서비스를 변경하더라도 연결된 다른 서비스에는 영향을 주지 않는 유연한 구조


2. ESB의 특징

 

  • 서비스들을 컴포넌트화된 논리적 집합으로 묶는 핵심 미들웨어이며, 비즈니스 프로세스 환경에 맞게 설계 및 전재할 수 있는 아키텍처 패턴
  • 버스 방식으로 확장성, 유연한 아키텍처 구성이 가능

3. EAI와 ESB의 비교

 

구분 EAI ESB
개념 미들웨어(Hub)를 이용하여 비즈니스 로직을 중심으로 기업 내 애플리케이션을 통합 연계 미들웨어(Bus)를 이용하여 서비스 중심으로 서비스를 지원하기 위한 관련 시스템과 유기적 연계
수행 목적 기업 내부의 이기종 응용 모듈 간 통합 기업 간의 서비스 교환을 위해 표준 API로 통합
토폴로지 포인트 투 포인트, 허브 앤 스포크, 메시지 버스, 하이브리드 버스 방식의 분산형 토폴로지 구성
표준 벤터 종속적 기술 적용 표준기술사용(웹 서비스, XML 등)
핵심 기술 어댑터, 브로커, 메시지 큐 웹 서비스, 지능형 라우터, 포맷 변환, 개방형 표준
통합 형태 애플리케이션 간의 단단한 통합 서비스 간의 느슨한 통합
적용 영역 기업 내부망 기업 내부 + 기업 외부 채널말

 


 

(4) 웹 서비스(Web Service) 방식

 

1. 웹 서비스의 개념

 

  • 네트워크에 분산된 정볼르 서비스 형태로 개방하여 표준화된 방식

2. 웹 서비스 관련 용어

 

용어 설명
HTTP(HyperText Transfer Protocol) • W3에서 HTML 문서를 송•수신하기 위한 규칙들을 정의해 놓은 표준 프로토콜
• 인터넷에서 요청과 응답에 의해 처리하는 프로토콜로 GET, POST, PUT 등의 방식을 사용
하이퍼텍스트(Hypertext) • 문장이나 단어 등이 링크를 통해 서로 연결된 네트워크처럼 구성된 문서
• 이미지 등을 누르면 다른 사이트로 옮겨갈 수 있도록 하이퍼링크(Hyperlink)가 걸려 있음
HTML(HyperText Markup Language) • 웹을 이루는 가장 기초적인 구성요소로, 웹 콘텐츠의 의미와 구조를 정의할 때 사용하는 기술
• 인터넷 웹(WWW) 문서를 표현하는 표준화된 마크업 언어

 


3. 웹 서비스 유형

 

SOAP/UDDI/WSDL 간 관계

 

< 웹 서비스 구성요소 >

용어 설명
서비스 브로커
(Service Broker)
서비스 등록 및 검색, 저장, 관리를 통해 서비스 제공자가 제공하는 서비스를 서비스 요청자에게 연결하는 주체
서비스 요청자/소비자
(Service Requester/consumer)
서비스 브로커에서 해당되는 서비스를 검색하여 서비스 제공자의 서비스를 요청하는 주체
서비스 제공자(Service Provider) 웹 서비스를 구현하여 제공하는 주체

⓵ SOAP(Simple Object Access Protocol)

 

  • HTTP, HTTPS, SMTP 등을 사용하여 XML 기반의 메시지를 네트워크 상태에서 교환하는 프로토콜

 

SOAP 개념

 

  • HTTP 프로토콜상에 SOAP Envelope, 헤더(Header), 바디(Body) 등이 추가된 XML 문서로 기본적인 송수신은 HTTP로 수행함
  • 원격 프로시저 호출(RPC, Remote Procedure Call)을 하는 메시지 패턴을 사용
  • 네트워크 노드(클라이언트)에서 다른 쪽 노드(서버)로 메시지를 요청하고, 서버는 메시지를 즉시 응답

⓶ WSDL(Web Service Description Language)

 

  • 웹 서비스명, 제공 위치, 메시지 포맷, 프로토콜 정보 등 웹 서비스에 대한 상세정보가 기술된 XML 형식으로 구현되어 있는 언어

 

WSDL 개념도

 

  • SOAP와 XML 스키마와 결합하여 인터넷상에 웹 서비스를 제공하기 위해 사용되기도 함

⓷ UDDI(Universal Description, Discovery and Integration)

 

  • 웹 서비스에 대한 정보인 WSDL을 등록하고 검색하기 위한 저장소로 공개적으로 접근, 검색이 가능한 레지스트리이자 표준
  • 서비스 제공자는 UDDI 라는 서비스 소비자에게 이미 알려진 온라인 저장소에 그들이 제공하는 서비스 목록들을 저장하게 되고, 서비스 요청자들은 그 저장소에 접근함으로써 원하는 서비스들의 목록을 찾을 수 있게 됨
  • 알려진 송수신 시스템의 통합 구현에서는 서비스의 공개 및 검색 과정이 필요 없으므로, UDDI를 구축하지 않음

 


 

(5) IPC(Inter-Process Communication)

 

1. IPC의 개념

 

  • OS에서 프로세스 간 서로 데이터를 주고받기 위한 통신 기술

2. IPC의 주요 기법

 

기법 설명
메시지 큐(Message Queue) 프로세스 또는 프로그램 간에 데이터를 교환하는 통신 방법
공유 메모리(Shared Memory) 컴퓨터 환경에서 여러 프로그램이 동시에 접근할 수 있는 메모리
소켓(Socket) IP 주소와 Port 번호가 합쳐진, 네트워크상에서 버서 프로그램과 클라이언트 프로그램이 통신할 수 있도록 해주는 교환 기술
세마포어(Semaphore) 각 프로세스에서 제어 신호를 전달하여 순서대로 작업을 수행하게 하는 기법

 


 

(6) LOD(Linked Open Data)

 

  • 웹 상에 존재하는 데이터를 개별 URI(Uniform Resource Udentifier)로 식별하고, 각 URI에 링크 정보를 부여함으로써 상호 연결된 웹을 지향하는 아키텍처
  • HTTP, RDF, URI 등 웹 표준을 활용해서 데이터를 누구나 자유롭게 활용하고 재생산할 수 있도록 개방한 데이터