WAS는 웹서버와 웹 컨테이너가 합쳐진 형태
웹 서버 단독으로 처리할 수 없는 데이터베이스의 조회나 다양한 로직 처리가 필요한 동적 컨텐츠를 제공한다.
사용자의 다양한 요구에 맞춰 웹서비스를 제공할 수 있다 WAS는 JSP, SERVLET 구동환경을 제공해주기 때문에 웹 컨테이너 혹은 서블릿 컨테이너라고 한다
웹 서버란 클라이언트(사용자)가 웹 브라우저에서 어떠한 페이지 요청을 하면 웹 서버에서 그 요청을 받아 정적 컨텐츠를 제공하는 서버이다.
여기서 정적 컨텐츠란(HTML 문서, CSS, JavaScript, 이미지 파일 등 ) 즉시 응답가능하 컨텐츠이다 웹 서버가 동적컨텐츠를 받으면
WAS에게 해당 요청을 넘겨주고, WAS에서 처리한 결과를
클라이언트(사용자)에게 전달해주는 역활도한다
WAS만 쓰면 안되는 이유
WAS는 DB조회 및 다양한 로직을 처리하는데 집중해야 한다.
단순한 정적컨텐츠는 웹서버에게 맡기며 기능 분리를 시켜서
서버부화를 방지한다.
만약 WAS가 정적 컨텐츠요청 까지 처리하면, 부하가 커지고
동적 컨텐츠 처리가 지연되면서 수행 속도가 느려지고
이로 인해 페이지 로딩시간이 늘어나는 문제를 발생하여
효율성이 크게 떨어진다
웹 서버를 WAS앞에 두고 필요한 WAS들을 WebServer에
플러그인 형태로 설정하면 더욱 요율적인 분산 처리가 가능하다
Tomcat이 아닌 Apche Tomcat인 이유
앞에서 언급한대로 정적 컨텐츠를 처리하는 웹 서버에는 Apache가 있고
동적 컨텐츠를 처리하는 WAS서버는 Tomcat이 있는디
Tomcat은 Apache Tomcat이라는 이름으로 많이 사용되여 혼란스러울 것이다 . 붙여 쓰는 이유는 Tomcat5.5 버전부터 정적 컨테츠를 처리하는
기능이 추가되어서 이기능이 순수 Apache를 사용하는 것에 비해
성능적 차이가 업다 Tocat이 Apache기능을 포함하고 있기 떄문에
Apache Tomcat이라고 부른다고 한다.