[Web] REST에 대해 간단 정리
REST란
- Representational State Transfer의 약자로, API 작동 방식에 조건을 거는 소프트웨어 아키텍처이다.
- REST는 통신을 관리하기 위한 지침으로 만들어졌다.
- REST 아키텍처 스타일을 따르는 API를 REST API 라고 한다.
- REST 아키텍처를 구현하는 웹서비스를 RESTful API라고 한다.
- RESTful API는 시스템끼리 정보를 안전하게 교환하기 위해 사용하는 인터페이스이다.
- REST API와 RESTful API의 차이는 REST 규칙을 더 잘지켰을 때 RESTful API 라고 한다.
REST 아키텍처 스타일의 원칙
- 균일한 인터페이스
- 무상태
무상태(Stateless)란?
클라이언트-서버 관계에서 서버가 클라이언트의 상태를 보존하지 않음.
통신에 필요한 상태 정보를 클라이언트가 가지고 있어, 서버는 응답만 하기 때문에 부하가 줄어들게 된다.
대용량 트래픽을 대비하기 위한 서버 확장에도 유리하다.
- 계층화 시스템
- 캐시 가능성
- 온디맨드 코드
RESTful API의 이점
확장성
- 무상태이기 때문에 서버의 부하가 적으며 효율적으로 서버의 크기를 조정할 수 있다.
유연성
- 완전한 클라이언트-서버 분리가 되기 때문에, 서버 어플리케이션의 플랫폼 또는 기술 변경이 클라이언트 어플리케이션의 영향을 주지 않는다. 예를 들어, 개발자가 어플리케이션의 로직을 다시 작성하지 않고도 데이터베이스 계층을 변경 할 수 있다.
독립성
- 사용하는 기술과 독립적이기 때문에, API설계에 영향을 주지 않고 다양한 프로그래밍 언어로 클라이언트 및 서버 어플리케이션을 작성할 수 있다. 또한 통신에 영향을 주지 않고 양쪽의 기술을 변경할 수 있다.
참고 사이트: https://aws.amazon.com/what-is/restful-api/
RESTful API란 무엇인가요? - RESTful API 설명 - AWS
Amazon API Gateway는 어떤 규모에서든 개발자가 API를 손쉽게 생성, 게시, 유지 관리, 모니터링 및 보안 유지할 수 있도록 하는 완전관리형 서비스입니다. API Gateway를 사용하면 실시간 양방향 통신 애
aws.amazon.com
https://inpa.tistory.com/entry/WEB-%F0%9F%93%9A-Stateful-Stateless-%EC%A0%95%EB%A6%AC
🌐 아주 쉽게 이해하는 Stateful / Stateless 차이
Stateful 과 Stateless 차이점 웹 공부를 하다보면 클라이언트(Client)와 서버(Server)간의 통신을 상태유지(Stateful) 하느냐, 상태유지하지않음(Stateless) 으로 하느냐 라는 말귀를 한번쯤은 들어본 적이 있
inpa.tistory.com