정보 처리 기사 실기 4. 통합 구현 - 연계 메커니즘 구성

2021. 7. 4. 00:03정 보 처 리 기 사 공 부/실 기

728x90
반응형

● 연계 메커니즘

 응용 소프트웨어와 연계 대상 모듈 간의 데이터 연계 시 요구사항을 고려한 연계방법과 주기를 설계하기 위한 메커니즘이다.

 

● 연계방식의 분류

  장점 단점
직접 연계 · 연계 및 통합 구현이 단순하며 용이함
· 개발 소요 비용 및 기간이 짧음
· 중간 매개체가 없으므로 데이터 연계 처리 성능이 대체로 좋음
· 시스템 간의 결합도가 높아 시스템 변경에 민감
· 암/복호화 처리 불가
· 연계 및 통합 가능한 시스템 환경이 제한적
간접 연계 · 서로 상이한 네트워크, 프로토콜 연계 및 통합 가능
· 인터페이스 변경 시에도 장애나 오류없이 서비스 가능
· 보안이나 업무 처리 로직을 자유롭게 반영 가능
· 연계 아키텍처 및 메커니즘이 복잡해 성능 저하 요소 존재
· 개발 및 적용을 위한 테스트 기간이 상대적 장기간 소요

 

● 주요 연계 기술

직접 연계 DB 링크(DB Link) · 데이터베이스에서 제공하는 DB 링크 객체를 이용
· 수신 시스템에서 DB 링크를 생성하고 송신 시스템에서 해당 DB 링크를 직접 참조하는 방식
DB 연결(DB Connection) · 수신 시스템의 WAS에서 송신 시스템 DB로 연결하는 DB 커넥션 풀(DB Connection Pool)을 생성하고 연계 프로그램에서 해당 DB 커넥션 풀 명을 이용하여 연결
API/Open API · 송신 시스템의 DB에서 데이터를 읽어서 제공하는 애플리케이션 프로그래밍 인터페이스 프로그램
· API명, 입출력 파라미터 정보가 필요함
JDBC · 수신 시스템의 프로그램에서 JDBC 드라이버를 이용하여 송신 시스템 DB와 연결
· DBMS 유형, DBMS 서버 IP와 Port, DB 인스턴스 정보가 필요
하이퍼 링크(Hyper Link) · 현재 페이지에서 다른 부분으로 가거나 전혀 다른 페이지로 이동하게 해주는 속성
간접 연계 연계 솔루션(EAI) · 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션들 간의 정보 전달, 연계, 통합을 가능하게 해주는 솔루션
· 송수신 시스템에 설치되는 어댑터를 이용
Web Service/ESB · 웹 서비스가 설명된 WSDL과 SOAP 프로토콜을 이용한 시스템 간 연계
소켓(socket) · 소켓을 생성하여 포트를 할당하고 클라이언트의 요청을 연결하여 통신


● 커넥션 풀(Connection Pool)

· 커넥션 풀은 데이터베이스와 연결된 커넥션을 미리 만들어서 풀 속에 저장해 두고 필요할 때 커넥션을 풀에서 가져다가 쓰고 다시 풀에 반환하는 기법이다.

· 데이터베이스에 연결하기 위해서 매번 커넥션 객체를 생성할 때마다 많은 시스템 자원이 소요되는 문제 해결을 위해 커넥션 풀 기법을 활용한다.

 

● JDBC(Java Database Connectivity)

· JDBC는 데이터베이스에서 자료를 조회하거나 업데이트하기 위해서 자바에서 데이터베이스에 접속할 수 있도록 하는 자바 API이다.

· JDBC는 Java Application, JDBC API, JDBC Driver Manager, JDBC Driver로 구성되어 있다.

Java Application · 네이티브 자바, 자바 서블릿, 자바 응용 프로그램
JDBC API · 자바 응용 프로그램에서 DB를 연결하고 데이터를 제어할 수 있도록 DB 연결 및 제어를 위한 인터페이스와 클래스들을 제공
JDBC Driver Manager · 자바 응용 프로그램이 사용하는 데이터베이스에 맞는 드라이버 검색, 연결 및 초기화 수행
JDBC Driver · 각 데이터베이스 제작업체(오라클, MySQL 등)에서 만든 데이터베이스 드라이버
· 자바 프로그램의 요청을 DBMS가 이해할 수 있는 프로토콜로 변환해주는 클라이언트 사이드 어댑터

 

● API(Application Programming Interface)

· API는 응용 프로그램에서 사용할 수 있도록 운영체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스이다.

· API는 어떠한 응용 프로그램에서 데이터를 주고 받기 위한 방법을 의미한다.

· 어떤 특정 사이트에서 특정 데이터를 공유할 경우 어떠한 방식으로 정보를 요청해야 하는지, 그리고 어떠한 데이터를 제공 받을 수 있을지에 대한 규격을 정해놓은 인터페이스라고 할 수 있다.

 

● 소켓(Socket)

· 네트워크를 경유하는 프로세스 간 통신의 접속점으로 소켓을 통해 클라이언트와 서버 프로그램 사이에 데이터를 송수신할 수 있다.

· 소켓은 IP address와 Port 넘버가 합쳐진 네트워크상에서 서버 프로그램과 클라이언트 프로그램이 통신할 수 있도록 해주는 교환 기술이다.

· 두 소켓이 연결되면 서로 다른 프로세스끼리 데이터를 전달할 수 있다.

· 두 소켓이 연결된 것을 세션(Session)이라고 부른다.

728x90
반응형