ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Web] Web Server와 WAS의 차이
    Web 2021. 7. 13. 09:59

    Web Server

    HTTP 요청을 받아들여 정적 컨텐츠를 반환하는 프로그램 (여기서 정적 컨텐츠는 HTML, CSS, Javascript, 이미지 등 즉시 응답이 가능한 컨텐츠를 말한다) 만약 Web Server가 동적 컨텐츠 요청을 받으면 WAS에게 요청을 넘겨준다.

    대표적인 Web Server는 Apache가 있다.

     

     

    WAS (Web Application Server)

    HTTP 요청을 받아들여 주로 동적 서버 컨텐츠를 수행하는 프로그램으로 Web Server와 구별이 되면서, 데이터베이스 서버와 같이 요청을 처리하는 프로그램. 대표적인 WAS는 Tomcat이 있다. WAS가 동적인 컨텐츠만 처리 할 수 있는 것은 아니다. 요즘 WAS는 Web Server 기능도 포함하고 있어 WAS 하나만으로도 정적, 동적 컨텐츠를 처리할 수 있다.

     

     

    Web Server와 WAS를 나눠서 사용하는 이유?

    WAS가 정적인 요청과, 동적인 요청을 동시에 처리하게 되면 많은 부하가 걸릴 수 있다. 그렇기 때문에 WAS는 비즈니스 로직과 동적인 컨텐츠를 처리하는 데 집중하게 하고, Web Server는 정적인 컨텐츠를 제공하는 역할을 집중하여 부하를 분산시킬 수 있다. 그렇기 때문에 WAS 앞 단에 Web Server를 두어 요청을 받은 뒤 정적인 요청이면 Web Server가 처리하고 동적인 요청이면 Web Server가 받은 요청을 WAS에게 넘겨주어 부하를 분산시키는 것이 일반적이다.

     

    또한 Web Server 뒤에 WAS를 여러 개를 둔다고 가정하면, Web Server가 요청을 받아 WAS들에게 적절히 일을 분배해 줘야 될 것이다. 이것을 로드 밸런싱(Load Balacing)이라 하고, 이런 이유로도 Web Server와 WAS를 같이 사용한다.

     

     

     

    댓글