2022. 8. 24. 18:03ㆍ정처기(실기)/통합 구현
(1) 연계 모듈 기능 구현
- 개발하고자 하는 응용 소프트웨어와 연계 모듈 간의 세부 설계서를 확인하여 일관되고 정형화된 연계 기능을 구현할 수 있다.
- 연계 모듈 기능 구현은 주로 EAI/ESB 방식과 웹 서비스 방식으로 구분된다.
(2) EAI 방식
- 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션 간의 정보를 전달, 연계, 통합이 가능하도록 해주는 솔루션이다.
- EAI를 사용함으로써 각 비즈니스 간 통합 및 연계성을 증대시켜 효율성을 높여 줄 수 있으며 각 시스템 간의 확장성을 높여 줄 수 있다.
1. EAI 구성요소
- EAI Platform 기반 위에 각 애플리케이션의 어댑터가 데이터 및 프로세스를 변환하여 이기종 간의 비즈니스를 연결한다.
구성요소 | 설명 |
EAI 플랫폼 | 이기종 시스템 간 애플리케이션 상호 운영 데이터의 신뢰성 있는 전송을 위한 메시지 큐와 트랜잭션 미들웨어 기능 수행 대규모 사용자 환경 지원을 위한 유연성과 확장성 보장 |
어댑터 | 다양한 패키지 애플리케이션 및 기업에서 자체적으로 개발한 애플리케이션을 연결하는 EAI의 핵심 장치로 데이터 입출력 도구 |
브로커 | 시스템 상호 간 데이터가 전송될 때, 데이터 포맷과 코드를 변환하는 솔루션 |
메시지 큐 | 비동기 메시지를 사용하는 다른 응용 프로그램 사이에서 데이터를 송수신하는 기술 |
비즈니스 워크플로우 | 미리 정의된 기업의 비즈니스 Workflow에 따라 업무를 처리하는 기능 |
2. EAI 구축 유형
- 포인트 투 포인트 : 가장 기초적인 애플리케이션 통합방법으로 1:1 단순 통합방법, 장점으로는 솔루션을 구매하지 않고 개발자 간의 커뮤니케이션을 통해서도 통합 가능
- 허브 앤 스포크 : 단일한 접점의 허브 시스템을 통하여 데이터를 전송하는 중앙 집중식 방식, 허브 장애 시 전체 장애 발생
- 메시지 버스 : 애플리케이션 사이 미들웨어를 두어 연계하는 미들웨어 통합 방식, 뛰어난 확장성과 대용량 데이터 처리 가능
- 하이브리드 : 그룹 내는 허브앤 스포크 방식을 사용하고, 그룹 간에는 메시지 버스 방식을 사용하는 통합 방식, 그룹 내 환경에 맞는 작업이 가능함
(3) ESB 방식
- 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션들 간을 하나의 시스템으로 관리 운영할 수 있도록 서비스 중심의 통합을 지향하는 아키텍처다.
- ESB는 미들웨어를 중심으로 각각 프로토콜이 호환할 수 있도록 애플리케이션의 통합을 느슨한 결합 방식으로 지원하는 방식이다.
1. ESB 특징
- 서비스들을 컴포넌트화된 논리적 집합으로 묶는 핵심 미들웨어이며, 비즈니스 프로세스 환경에 맞게 설계 및 전개할 수 있는 아키텍처 패턴이다.
- 버스 방식으로 확장성, 유연한 아키텍처 구성이 가능하다.
2. EAI와 ESB의 비교
구분 | EAI | ESB |
개념 | 미들웨어(Hub)를 이용하여 비즈니스 로직을 중심으로 기업 내 애플리케이션을 통합 연계 | 미들웨어(Bus)를 이용하여 서비스 중심으로 서비스를 지원하기 위한 관련시스템과 유기적 연계 |
수행 목적 | 기업 내부의 이기종 응용 모듈 간 통합 | 기업 간의 서비스 교환을 위해 표준 API로 통합 |
토폴로지 | 포인트 투 포인트, 허브 앤 스포크, 메시지 버스, 하이브리드 | 버스 방식의 분산형 토폴로지 구성 |
표준 | 벤더 종속적 기술 적용 | 표준기술사용(웹 서비스, XML 등) |
핵심 기술 | 어댑터, 브로커, 메시지 큐 | 웹 서비스, 지능형 라우터, 포맷 변환, 개방형 표준 |
통합 형태 | 애플리케이션 간의 단단한 통합 | 서비스 간의 느슨한 통합 |
적용 영역 | 기업 내부망 | 기업 내부+기업 외부 채널망 |
(4) EAI/ESB 방식 연계 모듈 구현
1. EAI/ESB 방식 연계 모듈 환경 구축 절차
- 연계 DB 또는 계정 생성 : 송수신 시스템에서 각각 DB 구성 및 계정 생성, 기존 DB 존재 시 목적에 따라 분리된 연계 사용자 계정 생성
- 연계를 위한 테이블 생성 : 연계에 필요한 연계 테이블, 로그 테이블, 매핑 테이블, 오류 코드 테이블 등을 생성
- 연계 응용 프로그램 구현 : 연계 응용 프로그램 구현 방식으로 트리거를 활용, 트리거는 송신 시스템의 운영 DB 테이블과 수신 시스템의 연계 테이블을 대상으로 구현하고 테이블 단위로 구현
2. EAI/ESB 방식 연계 모듈 구현 사례
- 추출 대상 테이블에서 삽입, 삭제, 갱신이 발생했을 때 로그를 기록하고 연계 테이블에 데이터를 전달한다.
(5) 웹 서비스 방식
- 웹 서비스는 네트워크에 분산된 정보를 서비스 형태로 개방하여 표준화된 방식으로 공유하는 기술로써 서비스 지향 아키텍쳐 개념을 실현하는 대표적인 기술이다.
1. 웹 서비스 유형
[1] : SOAP(Simple Object Access Protocol)
- HTTP, HTTPS, SMTP 등을 사용하여 XML 기반의 메시지를 네트워크 상태에서 교환하는 프로토콜이다.
- HTTP 프로토콜상에 SOAP Envelope, 헤더, 바디 등이 추가된 XML 문서로 기본적인 송수신은 HTTP로 수행한다.
- SOAP은 보통의 경우 원격 프로시저 호출을 하는 메시지 패턴을 사용한다.
- 네트워크 노드에서 다른 쪽 노드로 메시지를 요청하고 서버는 메시지를 즉시 응답하게 된다.
[2] : WSDL
- 웹 서비스명, 제공 위치, 메시지 포맷, 프로토콜 정보 등 웹 서비스에 대한 상세 정보가 기술된 XML 형식으로 구현되어 있는 언어이다.
- SOAP와 XML 스키마와 결합하여 인터넷상에 웹 서비스를 제공하기 위해 사용되기도 한다.
[3] : UDDI(Universal Description, Discovery and Integration)
- 웹 서비스에 대한 정보인 WSDL을 등록하고 검색하기 위한 저장소로 공개적으로 접근, 검색이 가능한 레지스트리이자 표준이다.
- 서비스 제공자는 UDDI라는 서비스 소비자에게 이미 알려진 온라인 저장소에 그들이 제공하는 서비스 목록들을 저장하게 되고, 서비스 소비자들은 그 저장소에 접근함으로써 원하는 서비스들의 목록을 찾을 수 있게 된다.
- 알려진 송수신 시스템의 통합 구현에서는 서비스의 공개 및 검색과정이 필요 없으므로, UDDI를 구축하지 않는다.
2. 웹 서비스 방식 연계 환경 구축 및 구현 절차
- 송수신 파일 경로 및 파일명 정의 : 송수신 시스템에서 송수신 연계 파일, 로그 파일 생성 경로와 파일명을 정의하고 디렉터리 생성
- 송신 연계 응용 프로그램 구현 : 연계 데이터를 추출하고 송신 파일을 XML형식으로 생성하는 프로그램 구현, 주기적 실행을 위해 운영체제의 크론 또는 DBMS의 잡 스케줄러에 등록
- 파일 전송 : HTTP 기반의 SOAP를 사용하여 전송, SOAP 대신 REST 프로토콜로 대체 가능
- 수신 DB 반영 서비스 호출 처리 : 연계 파일을 수신 위치로 전송 후 파일 내용을 수신ㄴ DB에 반영하는 서비스 실행, 서비스 명세서인 WSDL을 작성 후 송수신 시스템 간 공유
- 수신 연계 응용 프로그램 구현 : WSDL에 기술된 운영 DB에 연계 데이터를 반영하는 서비스 구현, 연계 파일의 데이터를 수신 시스템의 운영 DB에 반영 및 처리 과정을 기록하는 내용으로 구현
3. WSDL 문법 상세 설명
WSDL 1.1 | WSDL 2.0 | 설명 |
service | service | 웹 기반 프로토콜에 노출되는 시스템 함수의 집합을 포함한다. |
port | endpoint | 웹 서비스로의 주소 또는 연결 지점을 정의한다. |
binding | binding | 인터페이스를 규정하고 SOAP 바인딩 스타일과 트랜스포트를 정의한다. |
porttype | interface | 웹 서비스를 정의한다. |
operation | operation | SOAP의 동작 및 메시지 인코딩 방식을 정의한다. |
message | 없음 | 보통 message는 operation에 상응한다. |
types | types | 데이터를 기술한다. |
(6) IPC 방식
- IPC는 운영체제에서 프로세스 간 서로 데이터를 주고받기 위한 통신 기술이다.
1. IPC 주요 기법
- 메시지 큐 : 메시지 또는 패킷 단위로 동작하여 프로세스 간 통신
- 공유메모리 : 한 프로세스의 일부분을 다른 프로세스와 공유
- 소켓 : 클라이언트와 서버 프로세스 둘 사이에 통신을 가능하게 함
- 세마포어 : 프로세스 사이의 동기를 맞추는 기능을 제공
'정처기(실기) > 통합 구현' 카테고리의 다른 글
연계 메커니즘 구성 (0) | 2022.08.22 |
---|---|
연계 데이터 구성 (0) | 2022.08.21 |