K_blueprint

Web Server & Web Application Server(WAS) 본문

도구 & 정보 정리

Web Server & Web Application Server(WAS)

GODAGO 2023. 11. 12. 23:31
728x90
반응형

※ 정적 페이지(Static pages)와 동적 페이지(Dynamic pages)의 개념

  • Static pages(정적인 페이지 - 만들어놓은 것 그대로 제공)
    • image, html, css, javascript 파일 같이 컴퓨터에 저장되어 있는 파일들을 의미
    • 서버에서 요청에 알맞은 파일을 반환하며, 항상 동일한 페이지를 반환한다.
    • 웹 서버에서 제공한다.
    • ex) 구글에서 요청한 파일이 없거나 문제 발생 시 404페이지 출력 등
  • Dynamic pages(동적인 페이지 - 상호작용을 통한 데이터 처리가 필요한 경우에 사용)
    • 들어온 요청에 맞게 동적으로 만들어진 콘텐츠를 의미한다.
    • 데이터베이스, 서버 내 로직 등을 활용해 만들어진 콘텐츠를 반환한다.
    • 웹 애플리케이션 서버에서 제공한다.
    • ex) 홈페이지 창 - 정적인 페이지 / 로그인 창 - 동적인 페이지

 

Web Server(웹 서버)란?

- HTTP 요청을 받아 정적 컨텐츠를 제공하는 서버 혹은 프로그램

- HTTP 프로토콜을 기반으로 하여 클라이언트의 요청을 서비스하는 기능을 담당(ex. Apache Server, NginX 등)

 

( 기 능 )

- 정적인 컨텐츠콘텐츠 제공 : WAS를 거치지 않고, 바로 요청한 컨텐츠를 제공할 수 있다.

- 동적인 컨텐츠 제공을 위한 요청 전달 : 요청을 WAS에 보내고, WAS가 처리한 결과를 클라이언트에게 전달한다.

 

Web Application Server(웹 애플리케이션 서버)란?

- 다양한 서버 내 알고리즘, 비즈니스 로직, DB 조회 등 클라이언트 요청에 따라 동적인 콘텐츠를 제공하는 서버

- HTTP 프로토콜을 기반으로 하여 클라리언트의 요청에 따라 구현된 비즈니스 로직을 통해 동적으로 만들어진 콘텐츠를 반환(ex. Tomcat, JBoss, Jeus 등)

- 데이터베이스 접속 기능, 여러 개의 트랜잭션 관리 등 수행

 

 

즉, 웹 어플리케이션 서버는 웹 서버에서 요청을 받고, 이를 웹 컨테이너로 보내 로직(알고리즘, DB 연결 등)을 수행하고 그 결과를 다시 웹 서버로 보내 최종적으로 클라이언트에게 보내주는 것

 

 

 

● WAS가 Web Server의 모든 기능을 수행하면 되는 것 아닌가? Web Server를 굳이 왜 사용할까?

  • 기능을 분리하여 서버 부하를 방지
  • 물리적으로 분리하여 보안을 강화
  • 여러 대의 WAS를 연결해 로드 밸런싱 용도로 사용할 수 있다.
  • 여러 언어의 웹 어플리케이션 서비스가 가능

결론적으로, 자원 이용의 효율성 및 장애 극복, 배포 및 유지 보수의 편의성을 위해 Web Server, WAS를 각기 사용한다고 볼 수 있다.

728x90
반응형

'도구 & 정보 정리' 카테고리의 다른 글

Tomcat  (0) 2023.11.14
NginX & Apache  (0) 2023.11.14
Wordpress(워드 프레스란?)  (0) 2023.11.12
프로토타이핑 툴 소개(Figma & 카카오 오븐)  (0) 2023.11.11
Git과 Github에 대해서  (2) 2023.11.09