Web Server | WAS(Web Application Server) | |
개념 | 클라이언트(웹 브라우저)로부터 HTTP 요청을 받아 정적인 컨텐츠(이미지파일 등)를 제공하는 컴퓨터 프로그램 | DB조회나 다양한 로직 처리를 요구하는 동적인 컨텐츠를 제공하기 위해 만들어진 Application Server |
기능 | HTTP 프로토콜을 기반으로 클라이언트의 요청을 서비스하는 기능을 담당 - 기능1 : 정적인 컨텐츠 제공(WAS를 거치지않고 바로 자원을 제공) - 기능2 : 동적인 컨텐츠 제공을 위한 요청 전달(요청을 WAS에 보내고 WAS가 처리한 결과를 클라이언트에게 전달) |
WAS = Web Server + Web Container Web Server 기능들을 구조적으로 분리하여 처리하고자 하는 목적으로 제시됨 - 분산 트랜잭션, 보안, 메시징, 쓰레드 처리 등의 기능을 처리하는 분산 환경에서 사용 - 주로 DB서버와 같이 수행됨 |
종류 | Apache Server, Nginx, IIS 등 | Tomcat, JBoss, Jeus, Web Sphere 등 |
Q. Web Server와 WAS를 분리하는 이유?
A. 자원 이용의 효율성 및 장애 극복, 배포 및 유지보수의 편의성을 위해 Web Server와 WAS를 분리한다.
Web Server를 WAS 앞에 두고 필요한 WAS들을 Web Server에 플러그인 형태로 설정하면 더욱 효율적인 분산 처리가 가능하다.
참고
[Web] Web Server와 WAS의 차이와 웹 서비스 구조
https://gmlwjd9405.github.io/2018/10/27/webserver-vs-was.html