클라이언트 서버 아키텍처와 api
Jun 24, 2021
»
클라이언트 서버 아키텍처와 API
클라이언트 서버 아키텍처
빈번한 데이터 업데이트가 필요한 경우 리소스가 존재하는 곳과 리소스를 사용하는 앱을 분리시키는 것이 유리합니다
이렇게 리소스가 존재하는 곳
과 리소스를 사용하는 앱
을 분리시킨 것을 2티어 아키텍터
, 즉 클라이언트 서버 아키텍처
라고 합니다
클라이언트는 프론트엔드 영역
서버는 백엔드 영역
이라고 부릅니다
3티어 아키텍처
기존 2티어 아키텍처에 데이터베이스
가 추가된 형태를 3티어 아키텍처라고 부릅니다
서버는 보통 리소스를 전달해줄 뿐, 리소스를 저장하는 공간은 데이터베이스라는 창고에 둡니다
클라이언트와 서버 종류
클라이언트와 서버의 통신
클라이언트와 서버간의 통신은 요청
과 응답
으로 구성됩니다. 즉 요청이 있어야 응답이 옵니다
그전에 알아야할 개념이 있습니다. 프로토콜
이라는 개념인데요
프로토콜은 통신 규약
, 즉 약속입니다
웹애플리케이션 아키텍에서는 HTTP
라는 프로토콜을 이용해 서로 통신합니다
이때 주고받는 메시지는 HTTP 메시지
라고 합니다
주요 프로토콜의 종류는 다음과 같습니다
API
API
는 Application Programming Interface
의 약자로써 interface
즉 의사소통이 가능하도록 만들어진 접점을 제공해주는 것을 말합니다
즉 서버가 리소스를 활용할 수 있도록 인터페이스를 제공해주는 것을 API
라고합니다
HTTP API 디자인 같은 경우 좋은 예제가 있습니다. 바로 메소드가 등장해서 CRUD와 비슷하게됩니다
- 조회(Read): GET
- 추가(Create): POST
- 갱신(Update): PUT 또는 PATCH
- 삭제(Delete): DELETE