
인프런 강의 <<실전 JSP(renew ver.) 수강 후 공부를 위해 정리한 글입니다.
자바 서블릿과 상호작용하는 웹 서버(WAS)의 구성요소
위에서 웹 서버(WAS)라고 표기했지만, 웹 서버와 WAS는 약간 다른 개념임.
WAS(Web Application Server: 클라이언트의 요청을 받아 동적인 콘텐츠 처리
e.g) Tomcat
Web Server: 클라이언트 요청을 받아 정적인 콘텐츠처리
e.g) Apache
웹 서버와 WAS는 정적/동적으로 구분할 수 있지만, 대부분의 WAS는 정적인 콘텐츠 처리도 가능하도록 확장되었기에 WAS가 웹 서버를 포함하는 개념이라고 보아도 무방함.
WAS와 웹 서버를 같이 사용하는 이유는 WAS에 과도한 부담을 지우지 않기 위함.

웹 컨테이너는 웹서버(WAS)의 구성요소로서 동적인 데이터들을 처리하여 정적인 페이지로 바꿔줌.

1) 클라이언트는 웹서버로 request(요청)을 보낸다.
2) 서블릿을 포함하는 WAS는 컨테이너로 요청을 보낸다.
3) 컨테이너가 요청을 각 서블릿에게 전달한다.
4) 서블릿 메서드가 로드된다.
5) 서블릿은 컨테이너에 관련 response(응답)을 넘겨준다.
6) 컨테이너는 이를 서버에 전달한다. 서버는 응답을 클라이언트에게 전달한다.