Web Server와 WAS

910·2023년 11월 5일

N5

목록 보기
1/4

웹 서버(Web Server)

단순히 파일을 전달해주는 친구다. 이게 전부다.
사용자가 요청하면 위에서 정적 페이지를 준다.
만약 DB를 이용하거나 데이터를 가공해야하는 동적인 요청이 들어오면, 웹 서버는 처리할 수 없기 때문에 요청을 WAS에게 넘기고 처리된 결과를 받아와 클라이언트에게 전달한다.

웹 애플리케이션 서버(Web Application Server, WAS)

웹 서버가 못하는 복잡한 머리쓰는 일을 한다. 웹 서버로부터 동적인 요청을 넘겨 받아 DB에서 데이터를 가져오는 등 비즈니스 로직을 처리한 뒤 다시 웹 서버에게 넘겨준다.


+

웹 서비스는 아래와 같이 다양한 구조로 이루어질 수 있다.

  1. Client -> Web Server -> DB
  2. Client -> Web Application Server -> DB
  3. Client -> Web Server -> Web Application Server -> DB
  4. 기타..

WAS는 웹 서버의 역할도 수행할 수 있기 때문에 위 2번 처럼 웹 서버 없이 WAS만 존재할 수도 있다.
WAS를 웹 서버를 포함하는 개념이기도 하다.
그렇다면 굳이 웹 서버를 따로 사용하는 이유는 무엇일까?

  • 효율성, 배포 및 유지보수 편의성을 위해
  • 물리적으로 분리하여 보안 강화
  • 등등..

이미지 출처

정적, 동적 웹 페이지

정적 웹 페이지 (Static web page)

서버에서 별도의 가공 없이 저장된 그대로 사용자에게 전달되는 웹 페이지.
언제, 누가, 어떻게 열던 페이지의 내용이 같다.

ex) image, html, css, javascript 등등.. 컴퓨터에 저장되어 있는 파일

동적 웹 페이지 (Dynamic web page)

서버가 DB에서 정보를 가져오거나, 데이터를 가공한 후 생성되어 보여지는 웹 페이지.
사용자, 상황, 시간, 요청에 따라 페이지의 모습이 달라질 수 있다.

ex) 사용자에 따라 보여주는 정보가 다른 '마이페이지'

URL (Uniform Resource Locator)

웹 서버에 파일을 요청할 때, 우리는 브라우저의 '주소창'이라고 부르는 부분에 요청할 자원의 위치를 적는다.
URL은 자원의 위치 주소를 표기하기 위한 규칙이다.

일반적으로 아래와 같은 형태를 가진다.

Protocol://Hostname:port/file_path/query
  • 프로토콜 : 데이터를 주고 받는 규칙, 방식 웹 서버와 클라이언트는 HTTP라는 프로토콜을 가지고 통신한다. 우리가 보는 웹사이트들의 URL이 http:// 으로 시작하는 이유이다. + (URL은 웹 요청에만 쓰이지 않는다.)

0개의 댓글