본문 바로가기

Server & Infra

Server - WS(웹서버)와 WAS(웹어플리케이션서버)의 차이

웹서버(Web Server)는, 정적인 컨텐츠(html, css, js 등)를 제공하는 서버.
http 규약에 따라 웹 클라이언트의 요청을 받아들이고 응답을 하는 통신을 하는 것이 주역할 이며, 정적인 페이지를 생성한다.
ex) Apache, Nginx
 
WAS(Web Application Server)는, 동적인 컨텐츠를 제공하는 서버. DB조회나 로직 처리를 담당한다.
ex) Apache Tomcat, JBoss, Jeus, php-fpm
  • Apache Tomcat: WEB 서버(Container)가 내장되어있음.

WAS가 필요한 이유?

웹 페이지는 정적 컨텐츠와 동적 컨텐츠가 모두 존재하는데, 이때 사용자의 요청에 맞게 적절한 동적 컨텐츠를 만들어서 제공해주어야 한다.
만약에 정적인 웹서버만을 이용한다면, 사용자가 원하는 요청에 대한 결과값을 모두 미리 만들어 놓고 서비스를 해야한다. 이렇게 하면.. 자원이 절대적으로 부족하다.
따라서 요청(Request)에 맞는 데이터를 DB에서 가져와서 비즈니스 로직에 맞게 그때 그때 결과를 만들어서 제공함으로써 효율적으로 자원사용이 가능하다.
 
즉, 둘의 차이점은 어떤 타입의 컨텐츠를 제공하느냐의 차이이다.