SOAP이란?
SOAP의 풀네임은 "Simple Object Access Protocol"로, HTTP, HTTPS, STMP등을 사용하여 XML기반의 메시지를 컴퓨터 네트워크 상에서 교환하는 통신 프로토콜입니다.
서로 다른 서비스들간의 연동을 목적으로 상호 이해 가능한 포맷의 메세지를 송수신함으로써 원격지에 있는 서비스 객체나 API를 자유롭게 사용하고자 하는 기업의 요구에서부터 탄생한 프로토콜입니다.
동작 방식
- Web Service Broker : 서비스 등록 및 검색, 저장, 관리하는 주체
- Web Service Provider : 웹 서비스를 구현하여 운영하고 제공하는 주체
- Web Service Consumer : 웹 서비스를 요청하는 주체
- UDDI(Universal Description, Discovery and Integration) : WSDL을 담는 public registry 입니다
- WSDL(Web Services Description Language) : 웹서비스가 기술된 정의 파일의 총칭 합니다
- 서비스 제공자는 UDDI에 사용가능한 WSDL 등록
- 서비스 사용자는 원하는 서비스를 위해 UDDI를 검색
- 원하는 서비스에 대한 WSDL 다운로드
- WSDL 문서를 처리하여 적절한 인터페이스에 맞게 SOAP 메세지 작성
- HTTP를 통해 서비스 요청
- 서비스 제공자는 요청 값을 디코딩 후, 적절한 서비스 로직 수행
- 결과값을 SOAP 메세지로 작성 후 HTTP를 통해 요청자에게 반환
특징
- XML기반으로 플랫폼에 독립적, 서로 다은 운영체제에서 실행되는 서비스간 통신방법을 제공 합니다
- 프록시와 방화벽에 구애받지 않고, HTTP, HTTPS등을 통해 메세지를 교환합니다
- 확장이 용이합니다
- 에러 처리에 대한 내용이 기본적으로 내장되어 있습니다
- XML 형태로 메세지를 보내기 때문에 다른 기술들에 비해 상대적으로 처리속도가 느립니다
댓글 영역