웹 서버와 WAS의 차이점?
웹 서버
클라이언트가 웹 브라우저에서 어떤 요청을 했을 때, 그 요청을 받아서 정적인 컨텐츠를 제공하는 서버를 말한다.
만일 동적인 컨텐츠를 요청받는 경우에는 직접 처리하지 않고 WAS에 해당 요청을 넘긴다.
WAS가 처리한 결과를 받아 다시 클라이언트에 넘기는 역할도 한다.
Apache, Nginx 등이 웹 서버에 해당한다.
WAS
DB 조회 등의 동적인 컨텐츠를 제공하기 위한 애플리케이션 서버를 말한다.
JSP, Servlet 구동환경을 제공하기 때문에 서블릿 컨테이터, 웹 컨테이너로 불린다.
Tomcat, JBoss, WebSphere 등이 해당한다.
WAS는 웹 서버의 역할도 수행할 수 있다.
하지만 서버 부하를 방지하고, 보안 강화를 위해 분리하는 것이 바람직하다.
웹 서버를 사용해야 로드 밸런싱으로 여러 대의 WAS를 연결할 수도 있고 하나의 서버에 여러 개의 어플리케이션을 서비스 할 수도 있다.
JSP?
HTML 내에 직접 자바 코드를 삽입하여 동적 웹페이지를 생성하고 웹 브라우저에 돌려주는 서버 측 웹 프로그래밍
Sevlet?
웹 서버 성능 향상을 위해 사용하는 자바 클래스의 일종