1. SOAP (Simple Object Access Protocol)란?

HTTP, HTTPS, SMTP 등을 사용하여 XML 기반의 메시지를 컴퓨터 네트워크 상에서 교환하는 형태의 프로토콜로써 웹서비스의 기본적인 메시지 전송 수단. XML-RPC와 WDDX에서 envelope/header/body로 이루어진 구조와 전송과 상호 중립성의 개념을 도입하였다. 실제로 이용하기 위한 객체 간의 통신규약으로 인터넷을 통해 웹서비스가 통신할 수 있게 하는 역할을 담당.
 
  •  사용가능한 트랜스포트 프로토콜 : HTTP(표준), HTTPS, SMTP
  •  웹서비스 클라이언트와 서버 간에 통신하는 규약.
  •  분산 환경에서의 정보 교환을 목적으로 하는 경량의 XML 기반 프로토콜.
  •  즉 웹서비스에 사용되는 메시지의 데이터 포맷과 메시지의 처리룰을 정한 표준 통신 규약.

 


2. SOAP 구성요소

SOAP 메시지는 다음 요소를 포함하는 일반적인 XML 도큐먼트.
SOAP(SOAP Envelope), SOAP Header, SOAP Body, SOAP Encoding Rule, SOAP RPC Representation의 5가지 요소로 구성

3. SOAP 장점

SOAP은 기본적으로 HTTP 기반 위에서 동작하기 때문에, HTTP와 같이 프록시와 방화벽에 구애받지 않고 쉽게 통신이 가능하다. 플랫폼 및 프로그래밍 언어에 독립적이다. 간단하고 확장 가능하다. 멀티파트 MIME 구조를 사용하여 첨부를 통합하는 SOAP XML 메시지를 지원한다.

4. SOAP 단점

 XML 포맷의 형태로 보내기 때문에 다른 기술과 비교해서 상대적으로 느리다고 하나, 네트워크 속도의 발전과 성능 최적화 기술의 발전으로 많은 부분이 해결되고 있다고 한다.