swc발표자료2 2(restful)

Post on 29-Nov-2014

1.741 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

서울 웹 컨퍼런스 2012 - 1 - 웹의 개방과 공유

웹 콘텐츠의 자원화 – RESTful 아키텍처

안영회 (ITwise 컨설팅 )ahnyounghoe@gmail.com

서울 웹 컨퍼런스 2012 - 2 - 웹의 개방과 공유

다룰 내용

1

2

3

REST, RESTful 개념

RESTful 활용

웹 콘텐츠의 자원화

서울 웹 컨퍼런스 2012 - 3 - 웹의 개방과 공유

RESTful 이란 ?

RESTful

서울 웹 컨퍼런스 2012 - 4 - 웹의 개방과 공유

RESTful 이란 ?

RESTful문헌 조사 ( 위키피디아 , 책 , ...)

REST•2000 년 Roy Fielding 의 박사 학위 논문에서 처음 제안•REpresentational State Transfer•웹 (WWW) 과 같은 분산 시스템을 위한 소프트웨어 아키텍처 스타일

1

RESTful•다음 제약을 따르면 ...1.Client-server2.Stateless3.Cacheable4.Layered system5.Uniform interface(GET, PUT, POST, DELETE, ...)

2

RESTful클라이언트

RESTful서버

Uniform I/F

클라이언트 상태 매번

확인

응답 서버 구성 나는

몰라

그런데 왜 Representational 일까 ?

서울 웹 컨퍼런스 2012 - 5 - 웹의 개방과 공유

RESTful 이란 ?

RESTful문헌 조사 ( 위키피디아 , 책 , ...)

Resource Oriented ArchitectureRESTful 웹 서비스 구축을 위한 아키텍처•핵심 개념1.Resource2.URI3.Representations4.Link/Connectedness

3

ResourceResource URI (Universal Resource Identifier)URI (Universal Resource Identifier)

• 1.0.3 버전의 소프트웨어• 가장 최신의 소프트웨어• 2006 년 10 월 24 일의 첫 번째 글

• 1.0.3 버전의 소프트웨어• 가장 최신의 소프트웨어• 2006 년 10 월 24 일의 첫 번째 글

※ RESTful 웹 서비스 - 웹 서비스의 진화 , Leoard Richardson & Sam Ruby 역서 140 쪽

• http://.../software/releases/1.0.3.tar.gz• http://.../software/releases/latest.tar.gz• http://.../software/weblog/2006/10/24/0

• http://.../software/releases/1.0.3.tar.gz• http://.../software/releases/latest.tar.gz• http://.../software/weblog/2006/10/24/0

ResourceRepresentation 1

서버

Representation 1Representation 1Representation N

클라이언트

서울 웹 컨퍼런스 2012 - 6 - 웹의 개방과 공유

RESTful 이란 ?

예제 제공 :

DEMOResource-to-Representations

서울 웹 컨퍼런스 2012 - 7 - 웹의 개방과 공유

RESTful 이란 ?

DEMOResource-to-Representations

HTTP MethodHTTP Method

GETGET

POSTPOST

PUTPUT

DELETEDELETE

Resource URIResource URI

http://.../people/http://.../people/

http://.../gildong/site/1http://.../gildong/site/1

Media/Message TypeMedia/Message Type

application/xmlapplication/xml

application/jsonapplication/json

text/xmltext/xml

application/rss+xmlapplication/rss+xml

서울 웹 컨퍼런스 2012 - 8 - 웹의 개방과 공유

RESTful 활용

RESTful나는 과연 어디에 쓸 것인가 ?박사학위 취득할 것도 아니고 ... 무려 웹을 설계하거나 HTTP 표준을 만들 일은 더욱 없다 .

서울 웹 컨퍼런스 2012 - 9 - 웹의 개방과 공유

RESTful 활용

RESTful

클라우드약 300 만건

SOA약 130 만건

REST/~ful약 40 만건

국내 웹 페이지에서 찾아본 결과

서울 웹 컨퍼런스 2012 - 10 - 웹의 개방과 공유

RESTful 활용

RESTful국내 웹 페이지에서 찾아본 결과

출처 : http://www.iamcorean.net/20

서울 웹 컨퍼런스 2012 - 11 - 웹의 개방과 공유

RESTful 활용

OPEN API•웹 사이트의 REST, SOAP 을 통한 연동을 지원하는 기술군•Web 2.0 애플리케이션의 근간

서울 웹 컨퍼런스 2012 - 12 - 웹의 개방과 공유

웹 콘텐츠의 자원화

Open APIs - State of the Market 2011

서울 웹 컨퍼런스 2012 - 13 - 웹의 개방과 공유

RESTful 활용

국내 기업 적용 사례 (2009 년 )

•전사 표준 애플리케이션 프레임워크에 적용 후 파일럿 진행

•장애물1. 부족한 레퍼런스2. 개발자 프로그래밍 방식 변경3. 표준 “ Rich” 클라이언트 개발 방법 (no Active-X)

•효과1. 이종 기술간의 연계 개선 : 특정 기술 종속적인 데이터 통신을 순수

XML/JSON 기반 .NET 기반 클라이언트와 자바 연계로 수정2. 서비스 재사용 : JSP 기반 클라이언트 , Android 클라이언트 , .NET

클라이언트에 대해 같은 서비스 사용 가능

서울 웹 컨퍼런스 2012 - 14 - 웹의 개방과 공유

RESTful 활용

기업 적용 사례 (2009 년 )

MVC REST

※ 2009 년 수행 프로젝트 개발자 교재 중에서 발췌

서울 웹 컨퍼런스 2012 - 15 - 웹의 개방과 공유

RESTful 활용

기업 적용 사례 (2009 년 )

출처 : http://www.ibm.com/developerworks/websphere/techjournal/1005_col_barcia/1005_col_barcia.html

서울 웹 컨퍼런스 2012 - 16 - 웹의 개방과 공유

RESTful 활용

스프링 MVC 구조를 골격으로 가지는 , 간단한 큐레이션 서비스를 구축하는 예제이면 좋겠습니다 . view 단을 jsp 로 가는 것이 아니라 데이터는 controller 에서 json형태로 던져주고 , 그것을 클라이언트 단에서 파싱하는 형태이면 좋겠습니다 . 그렇게 하면 , PC, 스맛폰 등 각 환경에 맞는 UI 프레임워크를 통해 개별적인 구현이 가능할 것 같아서요 . 고수분들에게는 굉장히 기초적인 부분이겠으나 , 인터넷을 아무리 뒤져봐도 A~Z 까지 서비스 구축을 하는 예제는 없더군요 . 그런 것을 만들어 보시면 정말 근사할 것 같습니다 .

출처 : http://www.facebook.com/groups/springkorea/permalink/254474224664214/?comment_id=254761881302115&offset=0&total_comments=13

3 년이 지났는데 ...

서울 웹 컨퍼런스 2012 - 17 - 웹의 개방과 공유

RESTful 활용

• 튜토리얼 제공 : 개콘 커뮤니티 ( A-Z 지향 8 월 착수 )

• 서적 : RESTful 웹 서비스 ( ROA 구현 실무서 2007 년 원서 )

• Q&A: KSUG 커뮤니티 ( 활발한 답변 스프링 활용 중심 ) • https://groups.google.com/forum/?fromgroups#!forum/ksug• http://www.facebook.com/groups/springkorea/

어디서 배우나요 ?

서울 웹 컨퍼런스 2012 - 18 - 웹의 개방과 공유

RESTful 활용

자바를 쓰시는 분 중에 간혹 REST 를 위해서는 Spring 외에 다른 프레임워크가 필요하냐고 “ 자주” 물으시는데 ...

•답만 말하면 NO

서울 웹 컨퍼런스 2012 - 19 - 웹의 개방과 공유

웹 콘텐츠의 자원화

조직 내 활용에서도 충분히 효과를 낼 수 있고 ...

•조직간 , 시스템 ( 애플리케이션 ) 간 공유 /Mashup

전사 공통 모델

+ 전사 표준 코드 정보+ 전사 메세지 코드 정보

A 사업부 공통 모델

+ 사업부 업무 코드+ 사업부 기준 정보

업무 도메인 모델

B 사업부 공통 모델

+ 사업부 업무 코드+ 사업부 기준 정보

C 사업부 공통 모델

+ 사업부 업무 코드+ 사업부 기준 정보

업무 도메인 모델업무 도메인 모델

업무 도메인 모델

업무 도메인 모델업무 도메인 모델

업무 도메인 모델업무 도메인 모델

업무 도메인 모델업무 도메인 모델

업무 도메인 모델업무 도메인 모델

※ 2009 년 수행 프로젝트 보고 내용 중에서 발췌

서울 웹 컨퍼런스 2012 - 20 - 웹의 개방과 공유

웹 콘텐츠의 자원화

Social Intranet...

서울 웹 컨퍼런스 2012 - 21 - 웹의 개방과 공유

웹 콘텐츠의 자원화

서울 웹 컨퍼런스 2012 - 22 - 웹의 개방과 공유

웹 콘텐츠의 자원화

IF...

서울 웹 컨퍼런스 2012 - 23 - 웹의 개방과 공유

Reference• REST 개념 /기원

• http://en.wikipedia.org/wiki/Representational_state_transfer

• http://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm

• RESTful 웹 서비스 - 웹 서비스의 진화 , Leoard Richardson & Sam Ruby

• RESTful 활용

• http://www.iamcorean.net/20

• http://en.wikipedia.org/wiki/Open_API

• http://www.programmableweb.com/apis

• http://www.ibm.com/developerworks/websphere/techjournal/1005_col_barcia/1005_col_barcia.html

• http://www.facebook.com/groups/springkorea/permalink/254474224664214/?comment_id=254761881302115&offset=0&total_comments=13

• https://jira.springsource.org/secure/QuickSearch.jspa

• 웹 콘텐츠의 자원화

• http://www.slideshare.net/jmusser/open-apis-state-of-the-market-2011

• http://www.zdnet.com/blog/hinchcliffe/social-intranets-enterprises-grapple-with-internal-change/1410

• http://www.zdnet.com/blog/hinchcliffe/running-your-soa-like-a-web-startup/525

• http://www.ebizq.net/blogs/enterprise/2010/10/making_enterprise_applications.php

• http://www.zdnet.com/blog/hinchcliffe/should-companies-drive-their-traffic-to-facebook/2127

• http://www.ebizq.net/blogs/enterprise/2011/05/improving_enterprise_collabora.php

• http://spp.seoul.go.kr/main/news/news_report.jsp?communityKey=B0158&boardId=13317&act=VIEW

top related