[정보처리기사 실기] 4장 - 내외부 연계 모듈 구현

2022. 4. 20. 11:01정보처리기사/실기

728x90
반응형

연계 모듈 구현 환경 구설 및 개발

연계 모듈 기능 구현

- 개발하고자 하는 SW와 연계 모듈 간의 세부 설계서 확인해 일관 되고 정형화 된 기능 구현

- 주로 EAI/ESB방식과 웹서비스 방식 구분

 

EAI 방식

(1) EAI 개념

- 기업에서 운영되는 서로 다른 플랫폼이나 앱 간의 정보를 전달, 연계, 통합이 가능하게 해줌, 비즈니스 간 통합 및 연계성 증대, 효율성 높이고 시스템 간의 확장성 올려줌

 

(2) EAI 구성 요소

- EAI 플랫폼 기반 위에 어댑터가 데이터 및 프로세스 변환해 이기종 간 비즈니스 연결

  -> workflow
(process integrated)
<-  
|   |
Frontend App
- WEB
- BI
- App
ADAPTER EAI 통합서버
- Message Broker
- Data Broker
ADAPTER backend App
- Legacy
- ERP
- CRM
  ADAPTER  
Repository (DB)
User Layer EAI Layer Legacy Layer

구성 요소

  • EAI 플랫폼 : 이기종 상호 운영, 신뢰성 있는 전송을 위한 메시지 큐와 트랜잭션 미들웨어 기능 수행, 대규모 환경 지원 유연성과 확장성
  • 어댑터 : 자체 개발한 앱을 연결하는 EAI의 핵심 장치로 데이터 입출력 도구
  • 브로커 : 상호 간 전송시 데이터 포맷과 코드를 변환하는 솔루션
  • 메시지 큐 : 비동기 메시지 사용하는 다른 응용 프로그램 사이에서 데이터를 송수신하는 기술
  • 비즈니스 워크플로우 : 미리 정의된 비즈니스 워크플로우에 따라 업무 처리

(3) 구출 유형

  • 포인트 투 포인트 : 1대 1 통합, 장점 솔루션 구매하지 않고 개발자간 대화 통해 통합 가능
  • 허브 앤 스포크 : 단일한 접점의 허브 시스템을 통해 데이터 전송하는 중앙 집중식 방식, 허브 장애시 전체 장애
  • 메시지 버스 : 미들웨어를 두어 연계 통합, 확장성과 대용향 데이터 처리 가능
  • 하이브리드 : 그룹 내는 허브 앤 스포크 그룹 간에는 메시지 버스 방식, 그룹 내 환경 맞는 작업 가능

ESB 방식

(1) ESB 개념 : 기업에서 서로 다른 플랫폼과 앱을 하나의 시스템으로 관리 운영, 서비스 중심의 통합 지향하는 아키텍처, 미들웨어를 중심으로 각 프로토콜이 호환할 수 있도록 앱을 통합해 느슨한 결합 방식 지원

 

(2) 특징 : 서비스 컴포넌트화된 논리적 집합으로 묶는 핵심 미들웨어, 비즈니스 프로세스 환경에 맞게 설꼐 및 전개 할 아키텍처 패턴, 버스 방식으로 확장성 및 유연한 구성이 가능

 

(3) EAI & ESB

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

(3) - 1 뭐가 다른가?

- ESB = SOA + EAI, 그리고 중앙집중형 vs 버스형태, EAI는 중앙 집중 방식으로 문제가 많다 윤연하지 않고 단일 장애에 취약, 레거시 시스템 부하에 민감하다. SOA 등장으로 ESB를 밀기 시작, ESB = SOA 기반의 느슨한 결합을 지원하는 버스 형태의 연계 시스템

 

EAI/ESB 방식 연계 모듈 구현

(1) 연계 모듈 환경 구축 절차

  1. 연계 디비 또는 계정 생성 : 각 디비 구성 및 계정 생성, 기존 디비 존재 시 목적에 따라 분리된 연계 사용자 계정 생성
  2. 연계 위한 테이블 생성 : 연계 테이블, 로그 테이블, 매핑 테이블, 오류 코드 테이블 등 생성
  3. 연계 응용 프로그램 구현 : 트리거 활용, 트리거는 운영 디비 테이블과 수신의 연꼐 테이블을 대상으로 구현하고 테이블 단위 구현

 

(2) 사례

- 추출 대상 테이블에서 삽삭갱 발생 시 로그 기록하고 연계 테이블에 데이터 전달

CREATE OR REPLACE TRIGGER PROGRAM_NAME

AFTER INSERT OR UPDATE OR DELETE ON TABLE_NAME
FOR EACH ROW

DECLARE AFTER_CODE VARCHAR2(5);
트리거 생성, 추출할 테이블 각 행에 삽삭갱 할 때마다 실행

선언과 사용할 변수
BEGIN

IF INSERTING THEN

SELECT [CODE_VALUE_AFTER_MODIFIED]
INTO AFTER_CODE
FROM [CODE MAPPING TABLE]
WHERE [CODE_VALUE_BEFORE_MODIFIED] = : new.[CODE_COLUMN]

INSERT INTO [LOG TABLE] ( [COLUMN1], ...[COLUMN N])
VALUE(...);
INSERT INTO [LINK TABLE] [COLUMN1], ...[COLUMN N])
VALUE(SYSDATE, 'I', AFTER_CODE, ...., [:new.COLUMN_NAME]);

ELSIF DELETING THEN
(...)
시작

데이터 추가 된 경우

진행 단계 병 결과 대한 로깅 처리

로그 테이블에 처리 결과 삽입

연결 테이블 삽입 처리
변경 구분 I로 설정

데이터 삭제 경우
공통 코드 및 데이터 변환 처리
연계에 삽입
변경 구분 D 설정
단계별 수행 결과 로깅
로그 테이블에 삽입
ELSE
    IF UPDATING ('[CODE1 COLUMN]') OR UPDATING ('[CODE2 COLUMN]') THEN
    
....

    ELSIF UPDATING ('[TEXT COLUMN]') THEN

....

    ELSIF UPDATING THEN
....

    END IF;
   END IF;
EXCEPTION
WHEN NO_DATA_FOUND_THEN (...)
WHEN DUP_VAL_ON_INDEX_THEN (...)

END;
데이터가 수정된 경우

연계 데이터 중 코드 컬럼 변경이거나 텍스트 컬럼 변경 경우
연계 데이터가 아닌 컬럼이 변경된 경우


오류 처리
등록된 코드 매핑 코드가 없을 경우
테이블 등록시 동일 기본키 데이터 존재


종료

 

 

웹 서비스 방식

(1) 개념 : 네트워크 분산 정보를 서비스 형태로 개방해 표준화된 방식으로 공유 서비스 지향 아키텍처 개념을 실현하는 대표적 기술

 

(2) 유형 : SOAP 방식, UDDI 방식, WSDL 방식

 

  • SOAP : http, https, smtp 사용 xml 기반 메시지 네트워크 상태에서 교환하는 프로토콜
    • http 상에 soap envelope, header, body 등 추가 된 xml 문서 기본 송수신은 http로 진행
    • 일반적으로 원격 프로시저 호출(RPC) 메시지 패턴 사용
    • 네트워크 노드에 다른 노드로 메시지 요청하고, 즉답
  • WSDL : 웹 서비스명, 제공 위치, 메시지 포맷, 프로토콜 정보 등 웹 서비스 대한 상세 정보 기술된 XML 형식 언어
    • SOAP과 SML Schema와 결합해 웹 서비스 제공
  • UDDI : WSDL등록 검색하기 위한 저장소 공개적 접근, 검색이 가능한 레지스트리 표준
    • 제공자는 UDDI라는 서비스 소비자에게 이미 알려진 저장소에 목록 저장하고, 소비자들이 접근 원하는 데이터 찾음, 서비스 공개 및 검색과정이 필요 없으므로, UDDI 구축안함(알려진 경우)

(3) 웹 서비스 방식 연계 환경 구축 및 구현 절차

- 실전송이나 이력에 대한 기록 및 모니터링 기능 별도 구현

  1. 송수신 파일 경로 및 파일명 정의
  2. 송신 연계 응용 프로그램 구현
  3. 파일 전송
  4. 수신 디비 반영 서비스 호출 처리
  5. 수신 연계 응용 프로그램 구현

(4) 연계 모듈 구현

- SOAP와 WSDL 문법 구조 확인 바람

 

IPC 방식

(1) 개념 : 운영체제에 프로세스 간 데이터 주고 받는 통신 기술

- 메시지 큐, 공유메모리, 소켓, 세마포

 

연계 테스트 및 검증

연계 테스트 개념

- 연계 할 경우 데이터 정합성과 데이터 전송 여부 테스트, 사전에 테스트 케이스 작성, 작성된 테스트 케이스 활용해 연계 테스트를 수행한 후 수행 결과 검증 방식

 

연계 테스트 절차

  1. 연계 테스트 케이스 작성 : 단위 테스트 케이스와 통합 테스트 케이스
  2. 연계 테스트 수행
  3. 연계 테스트 수행 결과 검증
728x90
반응형