[웹 애플리케이션 아키텍처] - 클라이언트 - 서버 아키텍처
웹 애플리케이션 vs 웹 사이트
웹 애플리케이션(web application)이란?
- 사용자와 상호 작용이 가능한 웹이라고 할 수 있다. 컴퓨터에 설치해서 사용해야 했던 애플리케이션의 기능을 웹이 대신하는 것이다.
1. 클라이언트 - 서버 아키텍처
1) 2-tier
- 리소스가 존재하는 곳과 리소스를 사용하는 앱을 분리시킨 것을 말하며, 2티어 아키텍처, 또는 클라이언트 - 서버 아키텍처라고 부른다.
- 리소스를 사용하는 앱을 '클라이언트', 리소스를 제공하는 곳을 '서버'라고 부른다.
- 클라이언트와 서버는 요청과 응답을 주고받는 관계로, 클라이언트 - 서버 아키텍처에서는 요청이 선행되고 그 후에 응답이 온다.
클라이언트 - 서버 아키텍처
![](https://velog.velcdn.com/images/donggoo/post/dad3b203-85e3-40c3-9926-50ef097555df/image.png)
2) 3-tier
- 기존 2-tier 아키텍처에서 리소스를 저장하는 별도의 공간인 '데이터베이스'가 추가된 형태를 3-tier 아키텍처라고 한다.
클라이언트 - 서버 아키텍처 - 데이터베이스