ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 웹서버 vs 웹 어플리케이션 서버
    Spring/MVC1-웹 어플리케이션 이해 2023. 6. 6. 22:48
    728x90

    김영한 - 인프런 로드맵 자료 中

     

    모든 웹어플리케이션은 HTTP 프로토콜을 기반으로 이뤄진다.

    이유는 , 대부부은의 형태의 데이터가 HTTP를 기반으로 전송이 가능하기 때문이다.

     

    여기서 우리는 Wab Server 와 Web Application Server(WAS)를 구분할 필요가 있다.

     

     

    Web Server란
    HTTP를 기반으로 동작하며, 보통 정적인 리소스를 제공하는 것을 말한다.

    여기서 정적 리소스란, 이미 만들어진 HTML파일, CSS, JS, 영상, 이미지 등을 말한다. 이러한 리소스는 단순히 클라이언트의 요청이 들어왔을 때, 가지고 있는 데이터를 보내주기만 하면 끝인 경우이다.

     

    정확하게 Web Server와 Web Application Server를 나누는 기준은 아니지만, 대개 이 둘을 나눌 때는

    정적인 리소스를 내보내는 것이냐,
    코드를 실행해서 애플리케이션 로직을 수행할 수 있는 것이냐
    이 두가지로 간단하게 나눌 수 있다.

     

    위에서 가볍게 언급은 했지만,

    Web Application Server란
     Web Server와 동일하게 HTTP를 기반으로 동작하지만, 정적인 리소스가 아닌
    동적인 리소스를 제공하는 곳이다. 이에 더해, WAS는 애플리케이션 코드를 실행하는데
    Web Server 보다 더 특화 되었다고 말할 수 있다. 

     

     

    웹 시스템 구성

    ▶ WAS, DB

     

    장점

    • WAS에서 정적 리소스, 동적 리소스(애플리케이션 로직) 모두 제공 가능
    • 데이터를 API로 주고 받기만 하는 서버라면 WAS + DB 만으로도 충분

    단점

    • WAS가 주로 담당하는 동적 리소스부터, 웹서버가 담당하는 정적인 리소스까지 담당 > 서버의 과부하
    • WAS 장애시 오류 화면도 노출 불가능

     

     

     

     

    이상적인 웹 시스템 구성으로는,

    ▶ WEB, WAS, DB

     

    장점

    • 각자의 역할(정적리소스 - WEB,  동적 리소스 - WAS)을 구분 가능
    • 효율적인 리소스 관리 
      정적 리소스가 많이 필요해진다?   >>   WEB Server 증설
      동적 리소스가 많이 필요해진다?   >>   WAS 증설 
    • WAS, DB의 장애시 WEB서버가 오류화면 제공이 가능하다

     

     

              

    'Spring > MVC1-웹 어플리케이션 이해' 카테고리의 다른 글

    멀티 쓰레드  (0) 2023.06.07
    서블릿(Servlet)  (0) 2023.06.06
Designed by Tistory.