이것저것

Web Server vs WAS 본문

Web

Web Server vs WAS

nays111 2021. 1. 7. 00:37

Web Server

클라이언트로부터 HTTP 요청을 받아 HTML 문서나 각종 리소스를 전달하는 컴퓨터

Client : 주문을 하는 고객

Web Server : 주문을 받는 사람

손님은 HTTP 요청을 보낸다 (뭐뭐 페이지를 달라~)

서버는 클라이언트의 요청을 기다리고, 요청에 대한 데이터를 만들어서 응답 (정적 컨텐츠로 한정)


WAS

웹 애플리케이션과 서버 환경을 만들어 동작시키는 기능을 제공하는 sw 프레임워크

Web Server + Web Container

HTML 과 같은 정적인 페이지에서 처리할 수 없는 비즈니스 로직이나 DB 조회같은 동적인 컨텐츠를 제공

 


Web Server 와 WAS 차이

Web Server는 정적인 컨텐츠를 다루고, WAS는 정적이고 동적인 컨텐츠를 모두 다룬다.

 

Q : 그렇다면 Tomcat과 같은 WAS만 사용하면 되는데 왜 Apache와 같은 Webserver가 필요할까?

Web Server와 WAS를 분리한 경우

왜 분리할까?

  • 기능을 분리하여 서버 부하 방지
    • WAS는 DB 조회 등 페이지를 만들기 위한 다양한 로직을 처리하는데 단순한 정적 콘텐츠를 WAS에서 제공한다면 다른 작업에 사용하는 리소스들로 인해 지연 발생 가능 (그러나, tomcat 5.5 부터는 크게 차이 없음)
  • 물리적으로 분리하여 보안 강화
    • SSL 에 대한 암복호화 처리에 Web Server를 사용한다.
    • 공격에 대해 WebServer를 앞단에 두어 중요한 정보가 담긴 DB나 로직까지 (WAS까지) 전파되지 못하게 한다.
  • 여러 대의 WAS를 연결 가능
    • Load Balancing
    • fail-over, fail-back
    • 대용량 웹 애플리케이션의 경우 (여러 개의 서버 사용) Web Server와 WAS를 분리하여 무중단 운영을 위한 장애 극복에 쉽게 대응할 수 있다.
  • 다른 종류의 WAS로 서비스 가능
    • 하나의 서버에서 PHP Application 과 JAVA Application을 함께 사용하는 경우

(둘 다, Thread를 통해 프로그램을 실행)

'Web' 카테고리의 다른 글

Session, Cookie 에 관하여  (0) 2021.02.17
Web Socket  (0) 2021.01.18
Request, Response 흐름 과정  (0) 2021.01.16
Proxy  (0) 2021.01.07
GET vs POST  (0) 2021.01.07
Comments