[정보처리기사] 통합 구현 - 웹 서비스 방식

junjun·2023년 10월 4일
0

정보처리기사

목록 보기
17/21

웹 서비스 방식

웹 서비스(Web Service) 개념

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

웹 서비스 유형

  • SOAP 방식 ( Simple Objet Access Protocol )
  • UDDI 방식 ( Universal Description, Discovery and Integration )
  • WSDL 방식 ( Web Service Description Language )

SOAP ( Simple Object Access Protocol )

  • HTTP, HTTPS, SMTP 등을 사용하여
    XML 기반의 메시지를 네트워크 상태에서 교환하는 프로토콜
  • HTTP 프로토콜 상에 SOAP Envelope, 헤더(Header), 바디(Body) 등이 추가된 XML 문서로 기본적인 송수신은 HTTP로 수행한다.
  • SOAP은 보통의 경우 원격 프로시저 호출(RPC; Remote Procedure Call)을 하는 메시지 패턴을 사용한다.
  • 네트워크 노드(클라이언트)에서 다른 쪽 노드(서버)로 메시지를 요청하고, 서버는 메시지를 즉시 응답하게 된다.

WSDL ( Web Service Description Language )

  • 웹 서비스명, 제공 위치, 메시지 포맷, 프로토콜 정보 등
    웹 서비스에 대한 상세 정보가 기술된 XML 형식으로 구현되어 있는 언어
  • WSDL은 SOAP과 XML 스키마를 결합하여, 인터넷상에 웹 서비스를 제공하기 위해 사용되기도 한다.

UDDI ( Universal Description, Discovery and Integration )

  • UDDI는 웹 서비스에 대한 정보인 WSDL을 등록하고 검색하기 위한 저장소로, 공개적으로 접근,
    검색이 가능한 레지스트리이자 표준
  • 서비스 제공자는 UDDI라는
    서비스 소비자에게 이미 알려진 온라인 저장소에
    그들이 제공하는 서비스 목록들을 저장하게 되고,
    서비스 소비자들은 그 저장소에 접근함으로써 원하는 서비스들의 목록을 찾을 수 있게 된다.
  • 알려진 송수신 시스템의 통합 구현에서는
    서비스의 공개 및 검색과정이 필요 없으므로, UDDI를 구축하지 않는다.

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

  • 웹 서비스 방식은 EAI/ESB 방식과는 달리
    실제 전송이나 전송 이력에 대한 기록 및 모니터링 기능
    별도로 구현해야 한다.

1. 송수신 파일 경로 및 파일명 정의

  • 송수신 시스템에서 송수신 연계 파일,
    로그 파일 생성 경로와 파일명을 정의하고 디렉터리 생성

2. 송신 연계 응용 프로그램 구현

  • 연계 데이터를 추출하고 송신 파일을 XML 형식으로 생성하는 프로그램 구현
  • 주기적 실행을 위해 운영체제의 크론(Cron) 또는 DBMS의 잡 스케줄러(Job Scheduler)에 등록

3. 파일 전송

  • HTTP 기반의 SOAP을 사용하여 전송
  • SOAP 대신 REST 프로토콜로 대체 가능

4. 수신 DB 반영 서비스 호출 처리

  • 연계 파일을 수신 위치로 전송 후 파일 내용을 수신 DB에 반영하는 서비스 실행
  • 서비스 명세서인 WSDL을 작성 후 송수신 시스템 간 공유(XML 기반)

5. 수신 연계 응용 프로그램 구현

  • WSDL에 기술된 운영 DB에 연계 데이터를 반영하는 서비스 구현 ( Java 등 활용 )
  • 연계 파일의 데이터를 수신 시스템의 운영 DB에 반영 및 처리 과정을 기록하는 내용으로 구현

웹서비스 방식 연계 모듈 구현

1. 파일 전송 및 서비스 호출처리 구현

  • 웹 서비스 방식인 SOAP 및 WSDL을 활용한
    XML 방식으로 구현한다.

2. 수신 연계 응용 프로그램 구현

  • 송신 시스템에서 전달받은 XML의 정보를 추출하여
    운영 DB에 INSERT 하는 연계 응용 프로그램을 작성한다.

0개의 댓글