본문 바로가기
IT

restful 정리

by 김대근'IT공부 2018. 12. 17.

REST는 Representational State Transfer라는 용어의 약자로서
웹의 장점을 최대한 활용할 수 있는 아키텍처
***
1. Uniform (유니폼 인터페이스)
------------------------------
  Uniform Interface는 URI로 지정한 리소스에 대한 조작을 통일되고
  한정적인 인터페이스로 수행하는 아키텍처 스타일
***
2. Stateless (무상태성)
------------------------------
 a.상태가 있다 없다는 의미는 사용자나 클라이언트의 컨택스트를
   서버쪽에 유지 하지 않는다는 의미한다.

 b.세션이나 쿠키등을 별도로 관리하지 않기 때문에 API서버는 요청만을
   들어오는 메시지로만 처리하기 때문에 구현이 단순하다.
***
3.Cacheable (캐시 처리 기능)
----------------------------
 a.REST의 가장 큰 특징 중 하나는 HTTP라는 기존 웹표준을 그대로 사용한다.

 b.HTTP가 가진 캐싱 기능이 적용 가능하다. HTTP 프로토콜 표준에서 사용하는
  Last-Modified태그나 E-Tag를 이용하면 캐싱 구현이 가능하다.
***

4. Self-descriptiveness (자체 표현 구조)
---------------------------------------
 a.REST의 또 다른 큰 특징 중 하나는 REST API 메시지만 보고도 이를
   쉽게 이해 할 수 있는 자체 표현 구조로 되어 있다는 것
***

5. Client - Server Architecture (클라이언트 - 서버 구조)
-------------------------------------------------------
 a.REST 서버는 API를 제공하고, 제공된 API를 이용해서 비즈니스 로직 처리 및 저장을 책임진다.
 b.클라이언트의 경우 사용자 인증이나 컨택스트(세션,로그인 정보)등을 직접 관리하고 책임진다.
 c.서로간의 의존성이 줄어들게 된다.
***
6. 계층형 구조
---------------
 a. 클라이언트 입장에서는 REST API 서버만 호출한다.
 b. REST 서버는 다중 계층으로 구성될 수 있다.
   ex) 보안, 로드 밸런싱, 암호화, 사용자 인증 등등 추가 구조상 유연성 줄 수 있다.

 

반응형