soap 기반/ restful기반 웹서비스 비교

32
SOAP 기반 / Restful 기반 웹 서비스 비교 웹 서비스 기술 비교 분석 By Seungdols

Upload: seungdols

Post on 15-Apr-2017

9.125 views

Category:

Technology


3 download

TRANSCRIPT

Page 1: SOAP 기반/ RESTful기반 웹서비스 비교

SOAP 기반 / Restful 기반웹서비스비교

웹서비스기술비교분석

By Seungdols

Page 2: SOAP 기반/ RESTful기반 웹서비스 비교

CONTENTSPRESENTATION

Contents 1 SOAP기반 웹서비스

Contents 2 Restful기반 웹서비스

Contents 3 기술 비교

Contents 4 질의응답

2

Page 3: SOAP 기반/ RESTful기반 웹서비스 비교

1. SOAP기반웹서비스

3

먼저 SOA에대해알아보자.

SOA란 ?

기존의어플리케이션들의기능들을비즈니스적인의미를가지는기능단위로묶어서표준화된호출인터페이스를통해소프트웨어컴포넌트단위로재조합후,

해당서비스를서로조합하여업무기능을구현한어플리케이션을만들어내는소프트웨어아키텍처

Page 4: SOAP 기반/ RESTful기반 웹서비스 비교

1. SOAP기반웹서비스

4

응용프로그램간에연동을목적으로상호이해가능한포맷의메시지를 SOAP으로송·수신함으로원격지에있는서비스객체나API를자유롭게사용하고자하는기업의요구에서출발.

Page 5: SOAP 기반/ RESTful기반 웹서비스 비교

1. SOAP기반웹서비스

5

DATA

모든데이터가XML로표현된다.

Page 6: SOAP 기반/ RESTful기반 웹서비스 비교

1. SOAP기반웹서비스

6

UDDI(Universal Description ,Discovery and Integration)

웹 서비스를 등록하고검색하기 위한저장소로웹 서비스를공개적으로 접근, 검색이가능하도록공개된 레지스트리

모든데이터가XML로표현되고, 데이터와데이터를다루는오퍼레이션들이WSDL로정의되면, UDDI라는전역적인서비스저장소에등록되어, 누구라도서비스를찾을수있도록공개

Page 7: SOAP 기반/ RESTful기반 웹서비스 비교

1. SOAP기반웹서비스

7WSDL(Web Services Description Language)

Page 8: SOAP 기반/ RESTful기반 웹서비스 비교

1. SOAP기반웹서비스

8

UDDIWSDL

WSDL(Web Services Description Language)은웹서비스 기술언어또는기술된 정의 파일의총칭으로 XML로 기술된다.

웹서비스의 구체적내용이 기술되어있어 서비스 제공장소, 서비스메시지포맷, 프로토콜등이기술된다.

Page 9: SOAP 기반/ RESTful기반 웹서비스 비교

1. SOAP기반웹서비스

9

What is the SOAP ?

HTTP, HTTPS, SMTP등을통해XML기반의메시지를컴퓨터네트워크상에서교환하는프로토콜

Page 10: SOAP 기반/ RESTful기반 웹서비스 비교

1. SOAP기반웹서비스

10

단, 그림과같이 SOAP Envelope, SOAP Header,SOAP Body로구성된하나의XML 문서로표현됨.

복잡한구조를가지게되어HTTP 상에서전달되기무겁고, 메시지인코딩/디코딩과정등웹서비스개발의난이도높음.

개발환경의지원이필요함.

Page 11: SOAP 기반/ RESTful기반 웹서비스 비교

1. SOAP기반웹서비스

11

반복, 보안및트랜잭션을정보로하는메타정보.

주요한정보를담고있음

Page 12: SOAP 기반/ RESTful기반 웹서비스 비교

1. SOAP기반웹서비스

12

특정분산기술또는플랫폼에의존하지않으며,

분산객체에액세스할수있는프로토콜로HTTP상에서전송됨특정분산기술또는플랫폼에의존하지않으며,

분산객체에액세스할수있는프로토콜로HTTP상에서전송됨

Page 13: SOAP 기반/ RESTful기반 웹서비스 비교

1. SOAP기반웹서비스

13

서비스는발견이가능하며, 동적바인딩이가능.

Page 14: SOAP 기반/ RESTful기반 웹서비스 비교

1. SOAP기반웹서비스

14

서비스는발견이가능하며, 동적바인딩이가능.

서비스는컴포넌트와같이독립된모듈.

Page 15: SOAP 기반/ RESTful기반 웹서비스 비교

1. SOAP기반웹서비스

15

서비스는발견이가능하며, 동적바인딩이가능.

서비스는컴포넌트와같이독립된모듈.

서비스는느슨하게연결.

Page 16: SOAP 기반/ RESTful기반 웹서비스 비교

1. SOAP기반웹서비스

16

서비스는발견이가능하며, 동적바인딩이가능.

서비스는컴포넌트와같이독립된모듈.

서비스는느슨하게연결.

서비스의조립이가능.

Page 17: SOAP 기반/ RESTful기반 웹서비스 비교

1. SOAP기반웹서비스

17

서비스는발견이가능하며, 동적바인딩이가능.

서비스는컴포넌트와같이독립된모듈.

서비스는느슨하게연결.

서비스의조립이가능.

플랫폼과무관.

Page 18: SOAP 기반/ RESTful기반 웹서비스 비교

2. RESTful기반웹서비스

18

Roy Fielding이그의박사학위논문에서웹아키텍처가웹의본래설계의우수성을활용하지못하므로웹의장점을최대한활용할수있는네트워크기반의아키텍처를제안.

Roy Fielding이박사학위논문에서웹아키텍처가웹의본래설계의우수성을활용하지못하므로웹의장점을최대한활용할수있는네트워크기반의아키텍처를제안.

Page 19: SOAP 기반/ RESTful기반 웹서비스 비교

2. RESTful기반웹서비스

19

RESTful 웹서비스( Representational State Transfer , 2000년)

HTTP 프로토콜로데이터를전달하는프레임워크.

Page 20: SOAP 기반/ RESTful기반 웹서비스 비교

2. RESTful기반웹서비스

20

클라이언트와서버간의구성요소를엄격하게분리하여

구현을단순화함.

Page 21: SOAP 기반/ RESTful기반 웹서비스 비교

2. RESTful기반웹서비스

21

서버와클라이언트를독립적으로구현함으로 , 확장성향상

Page 22: SOAP 기반/ RESTful기반 웹서비스 비교

2. RESTful기반웹서비스

22

핵심은Web에개방된리소스이용.

REST는웹에개방된리소스들을원격에서또는지역적으로쉽게이용할수있는웹응용으로정착.

REST 아키텍처스타일에따라정의되고이용되는서비스나응용프로그램을RESTful 웹서비스라부름.

Page 23: SOAP 기반/ RESTful기반 웹서비스 비교

2. RESTful기반웹서비스

23

SOA ( Service Oriented Architecture )

서비스지향아키텍처

ROA ( Resource Oriented Architecture )

자원지향아키텍처

Page 24: SOAP 기반/ RESTful기반 웹서비스 비교

3. 기술비교

24

SOA 구조에 따라 UDDI 레지스트리를 통해서 웹서비스를 등록하고, 탐색하고, 바인딩하여 이용.

RESTful의 경우 리소스를 등록하고 저장해두는 중간 매개체 없이 리소스 제공자가직접 리소스 요청자에게 제공.

Page 25: SOAP 기반/ RESTful기반 웹서비스 비교

3. 기술비교

25

SOAP

SOAP의 경우에는 상호 통신간 프로그램들이 잘 이해 할 수 있는 문법에 따라 개발 되었고, 그에 따라서 개발자들은 웹 서비스의 기본 스펙을 알아야 하는고난이도 프로그래밍 능력이 요구됨.

Page 26: SOAP 기반/ RESTful기반 웹서비스 비교

3. 기술비교

26

RESTful

RESTful 웹서비스는 인터넷 서비스업체들이 응용 개발자들에게손쉬운 데이터 제공을 목적으로 출발함.

Page 27: SOAP 기반/ RESTful기반 웹서비스 비교

3. 기술비교

27

SOAP

사람보다는 기계의 우선적으로 이해하기 쉬운구조이므로, 환경 설정 및 개발 환경이 준비 되어 있어야 함.

Page 28: SOAP 기반/ RESTful기반 웹서비스 비교

3. 기술비교

28

RESTful

RESTful 웹서비스는 기계보다는 사람이 이해하기쉽도록인터넷기본(HTTP/XML)이외에 별도의 개발/실행 환경이 필요 없음.

Page 29: SOAP 기반/ RESTful기반 웹서비스 비교

4. 시멘틱웹

29

Web + Semantic

'의미론적인 웹'이라는 뜻으로, 현재의 인터넷과 같은 분산환경에서리소스(웹 문서, 각종 화일, 서비스 등)에 대한 정보와 자원 사이의관계-의미 정보(Semanteme)를 컴퓨터가 처리할 수있는 온톨로지형태로 표현하고, 컴퓨터가 처리하도록 하는 프레임워크이자 기술

Page 30: SOAP 기반/ RESTful기반 웹서비스 비교

4. 시멘틱웹

30

Information - Resource

온톨로지(Ontology)란사람들이 세상에대하여 보고 듣고느끼고생각하는 것에 대하여 서로 간의 토론을 통하여 합의를 이룬 개념을개념적이고 컴퓨터에서 다룰 수 있는 형태로 표현한 모델

Page 31: SOAP 기반/ RESTful기반 웹서비스 비교

5. 질의응답

31

단, 저는 아는 것만 대답합니다.

Page 32: SOAP 기반/ RESTful기반 웹서비스 비교

THANK YOU!