[ 정처기 실기 ] 통합 구현 #3 / 내외부 연계 모듈 구현
1. SOAP (Simple Object Access Protocol)
- HTTP, HTTPS, SMTP 등을 사용하여 XML 기반의 메시지를 네트워크 상태에서 교환하는 프로토콜 / HTTP 프로토콜 상에 SOAP Envelope, 헤더(Header), 바디(Body) 등이 추가된 XML 문서 / HTTP 로 기본적인 송수신
2. EAI 유형
1) 포인트 투 포인트 (Point -to - point)
- 가장 기초적인 애플리케이션 통합방법 / 1:1 단순 통합 방법 지향 / 개발자 간의 커뮤니케이션을 통해서 통합 가능한 EAI
2) 허브 앤 스포크 (Hub & Spoke)
- 단일한 접점의 허브 시스템을 통하여 데이터를 전송하는 중앙 집중식 방식 / 허브 장애시 전체 장애 발생
3) 메시지 버스(Message Bus)
4) 하이브리드 (Hybrid)
- 그룹 내는 허브 앤 스포크 방식을, 그룹 간 메시지 버스 방식을 사용하는 EAI유형
3. EAI (Enterprise Application Integration)
- 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션 간의 정보 전달, 연계, 통합을 가능하게 해주는 솔루션 / 대상 시스템에 비표준 어댑터(Adaptor)를 배포하여 통합하는 방식
4. EAI 구성 요소
1) EAI 플랫폼 (EAI Platform)
- 이기종 시스템 간 애플리케이션 상호 운영 / 데이터의 신뢰성 있는 전송을 위한 메시지 큐와 트랜잭션 미들웨어 기능 수행
- 대규모 사용자 환경 지원을 위한 유연성과 확장성 보장
2) 어댑터(Adaptor)
- 다양한 패키지 애플리케이션 및 기업에서 자체적으로 개발한 애플리케이션을 연결하는 EAI의 핵심 장치 / 데이터 입출력 도구
3) 브로커 (Broker)
- 시스템 상호간 데이터를 전송할때 데이터 포맷과 코드를 변환하는 솔루션
4) 메시지 큐(Message Queue)
- 비동기 메시지를 사용하는 다른 응용 프로그램 사이에서 데이터를 송수신 하는 기술
5) 비지니스 워크플로우 (Business Workflow)
- 미리 정의된 기업의 비지니스 workflow에 따라 업무를 처리하는 기능
5. ESB (Enterprise Service Bus) 개념
- 미들웨어(Bus)를 중심으로 각각 프로토콜이 호환할 수 있도록 애플리케이션의 통합을 느슨한 결합 방식으로 지원
6. WSDL(Web Service Description Language)
- 웹 서비스 방식의 연계 모듈 구현시 사용 되는 언어 / 웹 서비스에 대한 상세한 정보가 기술된 XML 형식의 언어
7. 인터페이스 데이터 표준
1) 인터페이스 공통부
- 인터페이스 표준 항목을 포함
2) 인터페이스 개별부
- 송수신 시스템에서 업무 처리에 필요한 데이터 포함
3) 인터페이스 종료부
- 전송 데이터의 끝을 표시하는 문자를 포함하여 종료 표시
8. API(Application Programming Interface)
- 응용프로그램에서 사용할 수 있도록 운영체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 규격을 정해둔 인터페이스
9. JDBC
1) Java Application
- 네이티브 자바, 자바 서블릿, 자바 응용 프로그램
2) JDBC API
- 자바 응용 프로그램에서 DB연결 후 데이터 제어 할 수 있도록 DB연결 및 제어를 위한 인터페이스와 클래스들을 제공
3) JDBC Driver Manager
- 자바 응용 프로그램이 사용하는 데이터베이스에 맞는 드라이버 검색, 연결 및 초기화
4) JDBC Driver
- 각 데이터베이스 제작 업체에서 만든 데이터베이스 드라이버
10. 소켓(Socket)
- 네트워크를 경유하는 프로세스 간 통신의 접속점 / IP Address와 Port 넘버가 합쳐진 형태
11. REST
- HTTP메서드(POST, GET, PUT, DELETE)를 통해 해당 자원에 대한 생성, 조회, 갱신, 삭제 등의 명령을 적용할 수 있는 분산 하이퍼미디어 시스템을 위한 소프트웨어 아키텍쳐 / 리소스(자원), 메서드(처리), 메시지 3가지 요소로 구성
12. UDDI
- 기업에서 운영되는 서로 다른 프랫폼 및 애플리케이션들 간의 정보 전달, 연계, 통합을 가능하게 해주는 솔루션