REST (REpresentational State Transfer)
: HTTP 기반 소프트웨어 아키텍쳐
REST API
즉, 웹 어플리케이션, 다양한 언어, 모바일 어플리케이션, 다른 서버 (*다 HTTP 기반) 등 끼리 서로 통신할 수 있도록,
통역 역할을 해주는 API (어플리케이션 간의 데이터 통신을 위한 어플리케이션 프로그래밍 인터페이스)
구성
- 자원(RESOURCE) - URI
- 행위(Verb) - HTTP METHOD
- 표현(Representations)
특징
1. 무상태성 Stateless
클라이언트의 상태를 저장 x. 작업을 위한 상태정보를 따로 저장하고 관리하지 않음. 세션 정보나 쿠키정보를 별도로 저장하고 관리하지 않기 때문에 API 서버는 들어오는 요청만을 단순히 처리하면 된다.
2. Client - Server 구조
각각의 역할이 확실하게 구분. 클라이언트와 서버에서 개발 할 내용이 명확해짐
3. 캐시 가능
HTTP 웹표준을 활용하기 때문에 기존 캐싱 기능 적용가능.
4. 자체 표현 구조
REST API 메시지만 보고도 이를 쉽게 이해 할 수 있는 자체 표현 구조로 되어 있음
5. 계층형 구조
REST서버는 다중 계층으로 구성가능. 보안, 로드 밸런싱, 암호화 계층 등 추가 가능
'공부 etc.' 카테고리의 다른 글
[AWS] Bastion 과 NAT Gateway (0) | 2023.05.08 |
---|---|
SVN과 Git의 차이점, 버전 관리 시스템(VCS) (0) | 2023.05.08 |
[Cloud] 컨테이너, 도커, 쿠버네티스(k8s) (0) | 2023.04.05 |
[Java] final에 관하여 (0) | 2023.02.25 |
[Java] 객체지향언어 특징(상속, 다형성, 캡슐화, 추상화) (0) | 2023.02.25 |