Web Server vs WAS
Web Server vs WAS
웹 서버
Http 프로토콜을 기반으로, 클라이언트의 요청을 서비스하는 기능을 담당
요청에 맞게 정적인 컨텐츠 또는 동적인 컨텐츠 요청을 위한 전달을 한다.
WAS(Web Application Server)
DB 조회 및 다양한 로직 처리 요구시 동적인 컨텐츠를 제공하기 위해 만들어진 애플리케이션 서버
HTTP를 통해 애플리케이션을 수행해주는 미들웨어다.
WAS는 웹 컨테이너 혹은 서블릿 컨테이너라고도 불림
WAS = 웹 서버 + 웹 컨테이너
WAS 주요 기능
-
프로그램 실행 환경 및 DB 접속 기능 제공
-
여러 트랜잭션 관
웹 서버가 필요한 이유
웹 서버에서는 정적 컨텐츠만 처리하도록 기능 분배를 해서 서버 부담을 줄이는 것
또한 WAS 는 DB 조회, 다양한 로직을 처리하는 데 집중해야 하기때문에 상대적으로 단순한 정적 컨텐츠는 웹서버에게 맡겨서
기능을 분리시켜 서버의 부하를 방지한다.
만약 WAS가 정적 컨텐츠 요청까지 처리하면, 부하가 커지고 동적 컨텐츠 처리가 지연되면서 수행 속도가 느려짐 → 페이지 노출 시간 늘어나는 문제 발생
WAS가 필요한 이유
WAS를 통해 요청에 맞는 데이터를 DB에서 가져와 비즈니스 로직에 맞게 그때마다 결과를 만들고 제공하면서 자원을 효율적으로 사용할 수 있음
출처 : https://github.com/gyoogle/tech-interview-for-developer/blob/master/Web/Web%20Server%EC%99%80%20WAS%EC%9D%98%20%EC%B0%A8%EC%9D%B4.md