Java&Web

[WEB] Web Server와 WAS를 연동하는 이유

프로그래민 2021. 8. 24. 09:36
반응형

[WEB] Web Server와 WAS

 

[WEB] Web Server와 WAS

Web Server란? 개념 하드웨어적 의미로는 Web Server가 설치되어 있는 컴퓨터 소프트웨어적 의미로는 클라이언트의 요청을 받아 정적 컨텐츠(image, html, css, javascript 등)를 제공하는 서버 기능 HTTP 프로

minkwon4.tistory.com

 

Web Server인 Apache에 대해 학습하던 중 만일 Web Server가 단순히 정적 데이터를 처리해주는 용도로만 사용된다면 WAS앞에 Web Server가 꼭 필요한지에 대한 의문이 생기게 되었다. 위에 작성된 포스팅에 따르면 Web Server가 다양한 기능을 제공하지만 만일 정적데이터만 처리를 하는 역할을 하는 경우, WAS 또한 정적데이터 처리가 가능하기에 Web Server가 굳이 필요하지 않는 상황이 올수도 있어서 이것에 대해 조사해보았다. WebServer는 Apache, WAS는 Tomcat을 기준으로 조사했다.

 

Apache와 Tomcat 연동하는 대표적인 이유들

1. Apache를 사용하여 Tomcat보다 빠른게 정적 데이터를 로드할 수 있다.
2. Apache의 다양한 모듈을 사용할 수 있다.
3. 장애 극복 및 부하 방지를 할 수 있다.
4. 여러 WAS를 운영할 수 있다.

의문점을 가졌던 첫번째 이유에 대해 알아보았다. Tomcat의 옛날버전에 있어서, 정적인 데이터를 로드할 때 Apache가 Tomcat보다 빠른 성능을 보기인 하였다. 다만, Tomcat 5.5버전 이후로 부터는 Apache native library를 지원하면서 정적인 데이터에 대해 Apache와 같은 효율을 사용할 수 있게 되었다. 따라서 단지 정적 데이터의 처리만을 위한 용도로 Apache가 사용된다면 오히려 불필요한 부하만 생기게 될 수 있다.

위의 나열한 이유중 1번을 제외한 다른 이유, Apache의 다양한 모듈(ex. mod_rewrite, mod_security)을 활용하는 상황이나 여러 WAS 운영하며 로드밸런싱이 필요한 상황 그리고 무중단배포등을 필요로 하는 상황이라면 Apache와 Tomcat의 연동이 필수적이게 된다. 정리하자면 기본적으로 Apache는 정적 데이터를 처리한다고 말하지만 사실은 그보다 Apache의 다양한 '운영 기능 확장'이라는 측면에서 Tomcat과 연동한다고 볼 수 있다.

 

 

출처
https://tomcat.apache.org/
https://limmmee.tistory.com/4
https://0ver-grow.tistory.com/134
https://nomore7.tistory.com/5
반응형