[SOAP] SOAP 특징/ 장단점
1. SOAP 의 특징(Simple Object Access Protocol)
● https, http등을 사용하여 XML 기반의 메시지를 네트워크 상에서 교환하는 형태에 프로토콜. 웹 서비스에서 기본적인 메시지를 전달하는 기반.
● Client가 물리적으로 인접하지 않은 서버에게 객체나 함수를 호출하여 호출에 대한 결과 값을 받는 RPC중 하나.
● 표준화 된 HTTP를 사용하기때문에 모든 기종에서 호환성을 보장.
● 분산 웹서비스 환경에서 정보를 교환하는 간단한 통신 프로토콜
● SOAP = XML+HTTP
1) 클라이언트에 요청과 서버측에 응답을 XML문자열로 포장한후 HTTP로 전송 하는방식
2. SOAP의 장점
● 언어 , 플랫폼 , 통신에 중립적
● 분산 컴퓨팅 환경을 다루기위해 설계
● 에러 처리에 대한 내용이 기본적으로 내장ㅈ
● 웹서비스를 위해 보급된 많은 표준과 벤더에 제공하는 도구.
3. SOAP의 단점
● REST 연동에 비해 복잡하고 무거움
● 개발이 어렵고 , 보통 도구(툴)이 필요함
'Webservice > 연동' 카테고리의 다른 글
DB_LINK 생성/삭제 (0) | 2017.05.30 |
---|---|
[REST] REST 특징/장단점 (0) | 2017.03.09 |
[SOAP / REST] SOAP과 REST ..1 (0) | 2017.03.08 |
[REST] REST 특징/장단점
1. REST의 특징(Representational State Transfer)
● 클라이언트 / 서버 구조
● HTTP와 XML을 포함한 웹 기술/프로토콜으로 SOAP보다 사용이 간편.
● ROA의 4가지 속성(Addressability, Connectedness, Statelessness, Homogeneous(Uniform) Interface)과 깊은 관련이있다.
1) Addressability : URI 이용
서버에 있 모든 Resource는 각 Resource당 클라이언트가 바로 접근 할 수 있는 고유 URI가 존재.
2) Statelessness : stateless
모든 요청은 클라이언트가 요청을 할때마다 필요한 정보를 주기때문에 서버에서는 세션정보를 보관할 필요가 없다, 그렇기 때문에 서비스에 자유도가 높아지고 유연한 아키텍처에 적응이 가능하다.
3) Homogeneous(Uniform) Interface : HTTP 메소드를 사용
모든 Resource는 일반적으로 httpd 인터페이스인 GET,POST,PUT,DELETE 4개의 매소드로 접근되어야함(추가로 HEAD나 OPTION을 추가하기도함).
결국 4개 매소드로만 DB의 CRUD(Create:POST, Read:GET , Update:PUT , Delete:DELETE) 기능을 하기때문에 이 유형이 아닌경우 처리가 모호해짐.
* 문자는 다음과 같이 표준 SQL문으로 대응 가능하다.
4) Connectedness(연결성)
서비스내에 하나의 리소스가 주변에 연관된 리소스들과 연결되어 표현(Presentation)이 되어야한다.
2. REST의 장점
● 언어 , 플랫폼에 독립적임(= 제한 되지않음)
● SOAP보다 개발이 쉽고 단순함.
● REST가 지원하는 프레임 워크나 언어 등 도구들이 없어도 구현가능.
● 기존 웹 인프라를 사용가능 : 기존 HTTP를 그대로 사용하기 때문에 구현이가능
3. REST의 단점
● HTTP 프로토콜만 사용가능
● P2P 통신 모델을 가정 했기 때문에 둘 이상을 대상으로 하는 분산 환경엔 유용하지 않음.
● 보안, 정책등에 대한 표준이 없기 때문에 관리가 어렵고 이러한 부분까지 고려해서 구현 할 경우 설계나 구현에서 좀 더 어려움.
'Webservice > 연동' 카테고리의 다른 글
DB_LINK 생성/삭제 (0) | 2017.05.30 |
---|---|
[SOAP] SOAP 특징/ 장단점 (0) | 2017.03.10 |
[SOAP / REST] SOAP과 REST ..1 (0) | 2017.03.08 |
업무 용어 정리..v.20170309
아키텍처 [ Architecture ] (컴퓨터 시스템의 구성):
하드웨어와 소프트웨어를 구성하는 요소들에 대한 전체의 설계 방식. 쉽게 말하면 소프트웨어에 구조같은 ..
RPC (Remote Procedure Call) 원격 절차 호출
한 프로그램이 다른 네트워크 상의 다른 컴퓨터에 위치하고 있는 프로그램에 서비스를 요청할때 서비스를 요청하는 프로그램이 네트워크에 상세 내용을 알지 못하더라도 요청이 되도록 해줄때 사용하는 Protocol
SOAP [Simple Object Access Protocol ] :
플랫폼 ,프로그래밍 언어에 제한 받지않고 분산처리 환경에서 정보교환을 쉽게 할 수 잇도록 한 규약.
SMTP [ simple mail transfer protocol ] :
인터넷 상에서 전자 메일을 전송할 때 쓰이는 표준적인 프로토콜.
WSDL [web Services Description Language] :
비즈니스 서비스를 기술하여 비즈니스들끼리 전자적으로 서로 접근하는 방법을 제공하기 위해 사용되는 xml기반의 언어.
WADL [Web Application Description Language] :
HTTP 기반 웹 응용 프로그램에 대 한 컴퓨터 판독이 가능한 XML 기반의 파일 형식.
로드 밸런싱:
분산처리 서비스 중 하나로, 네트워크 상단에 존재하는 L4 스위치에 있는 가상서버에서 들어오는 패킷을 리얼 서버로 균일하게 트래픽을 부하 분산하여 트래픽 부하 현상을 보안
Servlet(서블릿)(https://mangkyu.tistory.com/14)
웹프로그래밍에서 클라이언트의 요청을 처리하고 그 결과를 다시 클라이언트에게 전송하는 Servlet 클래스의 구현 규칙을 지킨 자바 프로그래밍 기술
기본적으로 구성하고 있는 뼈대.
- 확장 가능한 기반 코드 : 설계의 기반이 되는 부분을 기술
- 라이브러리 : 개발자가 코드를 확장하는 데 필요한 라이브러리
컴포넌트
프로그래밍의 한 부분을 의미하며 재사용이 가능한 최소 단위를 말한다.
모듈(Module)과 혼동될 수 있는데 모듈은 특정 기능을 온전히 수행할 수 있도록 만들어 졌다면 그 모듈 내에서도 재사용이 가능한 단위가 컴포넌트라 수 있다