[Web] Web Server Architecture

최지수·2022년 9월 17일
0

Web

목록 보기
6/6
post-thumbnail

그냥 쉽게 말해서 얼만큼 나눴냐라는 개념이에요

일반적으로 웹에선 사용자들이 사용하는 프론트엔드front-end, 그리고 사용자들에게 서비스를 제공하는 백엔드back-end가 있어요. 여기서 저는 개발자니까 '서버는 정보를 관리하는 데이터베이스도 있어!'라고 이야기할 수 있어요 ㅎㅎ.

하지만 이렇게 계층을 나누는 개념을 칭하는 메타포metaphore가 존재했어요. 이에 대해 다뤄봐요.

웹 서버의 기본 구조부터...

1. 웹 서버(Web Server)

클라이언트 PC에서 동작 할 정적 Web Page를 생성하여 클라이언트 PC에 전달해요.

💡정적 웹 페이지(Static Web Page)

  • 웹 브라우저만 있으면 볼 수 있는 페이지를 말해요
  • 즉, 웹 서버와 통신이 필요 없는 페이지를 말해요
  • 정적 페이지는 CSS, javascript가 동작을 하나, 동작 결과는 서버에 저장되지 않아요

2. Web Application Server(WAS)

웹 서버의 요청에 따라 동적 데이터를 생산해요. 그리고 이를 웹 서버에 전달해요.

3. DB 서버(Database Server)

WAS에 생성한 동적 데이터를 저장하는데 사용하거나, WAS에 필요한 동적 데이터를 읽을 때 사용해요.

웹 서버와 WAS에 대한 자세한 내용은 이전 블로그에 정리해 봤으니 읽어보시면 좋을거에요그래요. 빨리 읽고 좋아요랑 댓글 써주세요.

1-tier, 2-tier, 3-tier Architecture

기본 구조를 알았으니 이제 이 개념을 이해하실 수 있어요. 여기서 기본 구조에 속한 서버들을 컴포넌트component라 칭할게요.

계층tier는 물리적 분리를 의미해요. 결국 컴포넌트를 얼마나 분리했냐에 따라 1-tier, 2-tier, 3-tier가 나눠져요.

1-tier Architecture

WAS+DB 서버가 물리적 한 서버에 동작하는 구조에요. WAS가 웹 서버와 WAS의 역할을 모두 수행해요.

2-tier Architecture

WAS와 DB 서버가 각각의 물리적 서버에 동작하는 구조에요. WAS가 웹서버랑 WAS의 역할을 모두 수행해요.

3-tier Architecture

웹 서버, WAS 그리고 DB 서버가 각각의 물리적 서버에 동작해요.

Front-end, Back-end 간 Flow

  • Get Query를 통한 웹 페이지 요청
  • Get Query를 통한 웹 페이지 응답

참고

jinkwon.kim님 블로그 - [Web 개발] 1. frontend와 backend 연결 개념

profile
#행복 #도전 #지속성

0개의 댓글