Web Server란?
- 클라이언트가 서버에 페이지 요청을 하면 요청을 받아 정적 컨텐츠(.html, .png, .css등)를 제공하는 서버
- 클라이언트에서 전송된 HTTP 메시지를 핸들한다
- 동적 컨텐츠 제공이 필요한 경우 HTTP Request를 WAS에게 릴레이 한다
Web Application Server란?
- 비즈니스 로직을 처리하여 동적 컨텐츠를 제공하는 서버
- 정,동적 컨텐츠 처리가 모두 가능하여 Standalone으로 기능할 수 있다
Web Server와 WAS의 기능을 분리하는 이유
- WAS의 비즈니스 로직은 DB에 접근해야하는 경우가 많고 이에 따른 수행 시간이 필요하기 때문에 정적 컨텐츠의 경우 웹 서버에서 제공하는것이 로드 분산에 효율적이다
- 웹 서버 없이 WAS에 직접 접근할 경우 WAS의 port number가 노출되어 보안 상 좋지 않다
- 한 웹서버에서 여러 WAS를 통해 서비스 함으로서 failover에 유리하도록 설계 할수 있다