본문 바로가기

서버

WEB서버 WAS서버

 

Web서버

웹서버란 사용자가 브라우저에서 어떤 페이지를 요청하면 웹서버에서 그 요청을 받아 *정적 컨텐츠를 제공하는 서버이다. 정적컨텐츠란 단순HTML문서, CSS, javascript, 이미지, 파일 등 즉시 응답가능한 컨텐츠이다. 물론 웹서버는 정적컨텐츠만 제공하지는 않는다. 웹서버가 동적 컨텐츠를 요청받는다면 WAS서버에 해당요청을 넘겨주고 WAS가 처리한 결과를 사용자에게 전달해주는 역할도 한다. 대표적인 웹서버로는 Apache가 있다.

 

 

WAS 

WAS = Web Server + Web Container

웹서버와 웹컨테이너가 합쳐진 형태로서, 웹서버 단독으로는 처리할 수 없는 데이터베이스 조회나 다양한 로직 처리가 필요한 *동적 컨텐츠를 제공한다. 덕분에 사용자의 다양한 요구에 맞춰 웹 서비스를 제공할 수 있다. WAS는 JSP, Servlet구동환경을 제공해주기 때문에 웹컨테이너 혹은 서블릿 컨테이너라고도 불린다. 대표적인 WAS는 Tomcat이 있다.

 

Web Server와 WAS를 구분하는 이유

굳이 왜 Web서버와 WAS를 구분하는 걸까? WAS가 Web서버의 기능도 모두 수행하면 되지않을까?

웹페이지에는 정적컨텐츠와 동적컨텐츠가 존재한다.

Web Server만을 이용한다면 사용자가 원하는 요청에 대한 결과값을 모두 미리 만들어 놓고 서비스를 해야 한다. 그렇게 하기에는 자원이 절대적으로 부족하기 때문에 기능을 분리하여 서버에 부하를 방지한다.

또한 물리적으로 분리해서 보안을 강화한다.(SSL에 대한 암복호화 처리에 Web Server를 사용)

마지막으로 여러대의 WAS서버 연결하여 무중단 운영을 위한 장애 극복에 쉽게 대응할 수 있다.

즉, 자원 이용의 효율성 및 장애 극복, 배포 및 유지보수의 편의성 을 위해 Web Server와 WAS를 분리한다.

 

*정적컨텐츠

HTML, CSS, 자바스크립트로 이미 만들어진 결과물을 사용자에게 보여주는 컨텐츠

ex) 쇼핑몰 카테고리바 및 각종배너 같이 모든 사용자에게 동일하게 보여주는 부분

 

*동적컨텐츠

누가, 언제, 어떻게 서버에 요청했는지에 따라 각각 다른 내용이 보여지는 컨텐츠

ex) 쇼핑몰의 장바구니, 유튜브계정의 사용패턴에 따라 추천하는 맞춤채널, 위치에 따라 달라지는 네이버지도

 

 

 

참고

https://gmlwjd9405.github.io/2018/10/27/webserver-vs-was.html

https://codechasseur.tistory.com/25

'서버' 카테고리의 다른 글

HTTP 쿠키와 세션  (0) 2021.12.31
HTTP 기본  (0) 2021.12.25
URI와 웹 브라우저 요청 흐름  (0) 2021.12.24
서블릿(Servlet)과 JSP  (0) 2021.12.21
TCP / UDP  (0) 2021.12.19