[Web] Web Application Architecture

유아현·2022년 12월 1일
0

Web

목록 보기
1/11
post-thumbnail

Client Server Architecture

  • 리소스가 존재(제공)하는 곳(서버)과 리소스를 사용하는 앱(클라이언트)을 분리시킨 것
  • 다른 말로는 2티어 아키텍처라고도 한다.

카페를 예로 들자면, 리소스에 접근하려는 앱은 손님이다. 손님은 아메리카노를 마시기 위해 리소스를 가지고 있는 점원에게 요청해야 한다. 손님의 요청에 따라 점원은 리소스를 담아서 응답한다. 이처럼 클라이언트(손님)와 서버(점원)는 요청과 응답을 주고받는 관계이다. 클라이언트-서버 아키텍처에서는 선요청 후응답이다.

🔹 서버는 리소스를 전달해 주는 역할만 담당한다. 리소스를 저장하는 공간을 별도로 마련해 두는데 이 공간은 바로 "데이터베이스"이다. DB는 창고와 같은 역할을 한다.

🤔 위와 같이 데이터베이스 즉, 리소스 저장 공간이 따로 존재한다면?

이와 같이 기존 2티어 아키텍처에서 DB가 추가된 형태를 3티어 아키텍처라고 한다.

Client와 Server의 종류

  • Client는 보통 플랫폼에 따라 구분된다. 브라우저를 통해서 주로 이용하는 웹 플랫폼에서의 Client는 웹사이트, 웹 앱이라고 부른다.

Client Server API

  • "의사소통이 가능" 하도록 만들어진 "접점"을 의미한다.
  • 서버는 클라이언트에게 리소스를 잘 활용할 수 있도록 인터페이스를 제공한다.

0개의 댓글