본문 바로가기
정보처리기사

[정보처리기사 실기] 4. 통합 구현

by 아마도개발자 2024. 3. 17.

연계 메커니즘 정의

(1) 연계 매커니즘의 개념: 으용 소프트웨어와 연계 대상 모듈 간의 데이터 연계 시 요구사항을 고려한 연계 방법과 주기를 설계하기 위한 메커니즘

(2) 연계 매커니즘의 기능

  • 데이터를 생성하여 전송하는 송신 시스템과 송신 데이터를 수신하여 DB에 반영하는 수신 시스템으로 구성
  • 송신 시스템은 운영 데이터베이스, 애플리케이션으로부터 연계 데이터를 연계 테이블 또는 파일로 생성하여 송신
  • 수신 시스템은 송신 시스템으로부터 전송된 데이터를 변환 처리 후 데이터베이스에 반영

(3) 연계 방식

  • 직접 연계
    • 장점
      • 연계 및 통합 구현이 단순하여 용이함
      • 개발 소용 비용 및 기간이 짧음
      • 중간 매개체가 없어 데이터 연계 처리 성능이 대체로 좋음
    • 단점
      • 시스템 간 결합도가 높아 시스템 변경에 민감
      • 암,복호화 처리 불가
      • 연계 및 통합 가능한 시스템 환경이 제한적
  • 간접 연계
    • 장점
      • 서로 상이한 네트워크, 프로토콜 연계 및 통합 가능
      • 인터페이스 변경 시에도 장애나 오류 없이 서비스 가능
      • 보안이나 업무 처리 로직을 자유롭게 반영 가능
    • 단점
      • 연계 아키텍처 및 메커니즘이 복잡해 성능 저하 요소 존재
      • 개발 및 적용을 위한 테스트 기간이 상대적으로 장기간임
  • 주요 연계 기술
구분 연계 기술 설명
직접 연계 DB링크 - 데이터베이스에 제공하는 db 링크 객체 이용 - 수신 시스템에서 db 링크를 생성하고 송신 시스템에서 해당 db 링크를 직접 참조
DB 연결 - 수신 시스템의 WAS에서 송신 시스템 DB로 연결하는 DB 커넥션 풀을 생성하고 연계 프로그램에서 해당 DB 커넥션 풀을 이용하여 연결  
API/OPEN API - 송신 시스템의 DB에서 데이터를 읽어서 제공하는 애플리케이션 프로그래밍 인터페이스  
JDBC - 수신 시스템의 프로그램에서 JDBC드라이버를 이용하여 송신 시스템 DB와 연결  
하이퍼 링크 - 현재 페이지에서 다른 부분으로 가거나 전혀 다른 페이지로 이동하게 해주는 속성  
간접 연계 연계 솔루션(EAI) - 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션들 간의 정보 전달, 연계, 통합을 가능하게 해주는 솔루션 - 송수신 시스템에 설치되는 어댑터를 이용
Web Service/ESB - 웹서비스가 설명된 WSDL과 SOAP 프로토콜을 이용한 시스템 간 연계  
소켓 - 소켓을 생성하여 포트를 할당하고 클라이언트의 요청을 연결하여 통  

내외부 연계 모듈 구현

(1) 연계 모듈 기능 구현

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

(2) EAI방식

  • EAI 개념
    • EAI는 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션 간의 정보를 전달, 연계, 통합이 가능하도록 해주는 솔루션
    • EAI를 사용하여 각 비즈니스 간 통합 및 연계성을 증대시켜 효율성을 높이며 각 시스템 간의 확장성도 높일 수 있음
  • EAI 구성요소
    • EAI 플랫폼: 이기종 시스템 간 애플리케이션 상호 운영, 메시지 큐와 트랜잭션 미들웨어 기능 수행
    • 어댑터: 다양한 패키지 애플리케이션 및 기업에서 자체적으로 개발한 애플리케이션을 연결하는 EAI핵심 데이터 입출력 도구
    • 브로커: 시스템 상호 간 데이터가 전송될 때, 데이터 포맷과 코드를 변환하는 솔루션
    • 메시지 큐: 비동기 메시지를 사용하는 다른 응용 프로그램 사이에서 데이터를 송수신하는 기술
    • 비즈니스 워크플로우: 미리 정의된 기업의 비즈니스 workflow에 따라 업무를 처리하는 기능
  • EAI 구축 유형
    • 포인트 투 포인트: 가장 기초적인 애플리케이션 통합방법으로 1:1 단순 통합방법
    • 허브 앤 스포크: 단일한 접점의 허브 시스템을 통하여 데이터를 전송하는 중앙 집중식 방식(허브 장애 시 전체 장애 발생)
    • 메시지 버스: 애플리케이션 사이 미들웨어를 두어 연계하는 미들웨어 통합 방식(뛰어난 확장성과 대용량 데이터 처리 가능)
    • 하이브리드: 그룹 내는 허브 앤 스포크 방식을 사용하고, 그룹 간에는 메시지 버스 방식을 사용하는 통합 방식

(3) ESB 방식

  • ESB 개념
    • 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션들을 하나의 시스템으로 관리 운영할 수 있도록 서비스 중심의 통합을 지향하는 아키텍쳐
    • ESB는 미들웨어를 중심으로 각각 프로토콜이 호환될 수 있도록 애플리케이션의 통합을 느슨한 결합으로 지원하는 방식
  • ESB 특징
    • 서비스들을 컴포넌트화된 논리적 집합으로 묶는 핵심 미들웨어, 비즈니스 프로세스 환경에 맞게 설계 및 전개할 수 있는 아키텍쳐 패턴
    • 버스 방식으로 확장성, 유연한 아키텍처 구성이 가능
  • EAI와 ESB 비교
구분 EAI ESB
개념 미들웨어를 이용하여 비즈니스 로직을 중심으로 기업 내 애플리케이션을 통합 연계 미들웨어를 이용하여 서비스 중심으로 서비스를 지원하기 위한 관련시스템과 유기적 연계
수행 목적 기업 내부의 이기종 응용 모듈 간 통합 기업 간의 서비스 교환을 위해 표준 API로 통합
토폴로지 포인트 투 포인트, 허브 앤 스포크, 메시지 버스, 하이브리드 버스 방식의 분산형 토폴리지 구성
표준 벤더 종속적 기술 적용 표준기술사용
핵심 기술 어댑터, 브로커, 메시지 큐 웹 서비스, 지능형 라우터, 포맷 변환, 개방형 표준
통합 형태 애플리케이션 간의 단단한 통합 서비스 간의 느슨한 통합
적용 영역 기업 내부망 기업 내부 + 기업 외부 채널망

(4) 웹 서비스 방식

  • 개념: 네트워크에 분산된 정보를 서비스 형태로 개방하여 표준화된 방식으로 공유하는 기술, 서비스 지향 아키텍쳐 개념을 실현하는 대표적인 기술
  • 용어: HTTP, 하이퍼텍스트, HTML
  • 유형
    • SOAP
      • HTTP, HTTPS, SMTP 등을 사용하여 XML 기반의 메시지를 네트워크 상태에서 교환하는 프로토콜
      • 원격 프로시저 호출(RPC)을 하는 메시지 패턴 사용
      • HTTP 프로토콜상에 SOAP Envelope, 헤더, 바디 등이 추가된 XML문서로 기본적인 송수신은 HTTP로 수행
    • WSDL
      • WSDL은 웹 서비스명, 제공 위치, 메시지 포맷, 프로토콜 정보 등 웹 서비스에 대한 상세 정보가 기술된 XML 형식으로 구현되어 있는 언어
      • SOAP, XML 스키마와 결합하여 인터넷상에 웹 서비스를 제공하기 위해 사용되기도 함
    • UDDI
      웹 서비스에 대한 정보인 WSDL을 등록하고 검색하기 위한 저장소로 공개적으로 접근, 검색이 가능한 레지스트리이자 표준

(5) IPC방식

- 개념: IPC는 운영체제에서 프로세스 간 서로 데이터를 주고받기 위한 통신 기술
- 주요 기법: 메시지 큐, 공유 메모리, 소켓, 세마포어