아파치란 것은 소프트웨어 단체 이름이다.
그리고 우리가 흔히 부르는 아파치 서버라는 것은 이 재단에서 후원하는 오픈소스 커뮤니티에서 만든 http 웹서버를
지칭하는 말이다. (아파치 프로젝트는 웹서버 외에도 여러가지 프로젝트를 진행하고 있다)
클라이언트가 get, post, delete 등등의 메소드를 이용하여 요청을 하면 이 프로그램이 어떠한 기능을 돌려주는
기능을 한다. 아파치는 웹서버다.
tomcat은 흔히 WAS라고 말한다.
WAS는 웹서버와 웹 컨테이너의 결합으로 다양한 기능을 컨테이너에 구현하여 다양한 역할을 수행할 수 있는
서버를 말한다. 클라이언트의 요청이 있을 때 내부의 프로그램을 통해 결과를 만들어내고 이것을 다시 클라이언트에
전달해주는 역할을 하는 것이 바로 웹 컨테이너이다.
앞에서 본 아파치 웹서버와 차이는 이 컨테이너 기능이 있냐 없냐의 차이다. 이게 큰 차이점이라고 생각한다.
WAS역시 웹서버로서 역할을 수행할수 있기에 둘이 너무 헷갈린다.
위 그림에서 알수있듯 WAS만 쓰면되지 않냐 라는 질문에 반박할수 있게 된다.
목적이 달라서 WAS만 사용하면 안된다.
웹서버는 정적인 데이터를 처리하는 서버이다. 이미지나 단순 html 파일과 같은 리소스를 제공하는 서버는
웹서버를 통하면 WAS를 이용하는 것보다 훨씬 빠르고 안정적이다.
WAS는 동적인 데이터를 처리하는 서버이다. DB와 연결되어 데이터를 주고받거나 프로그램으로 데이터 조작이 필요한
경우에는 WAS 활용해야한다.
이때 DB가 왜 동적이냐?
DB는 항상 변하니까.
'Developer' 카테고리의 다른 글
Dispatcher Servlet 이란? (0) | 2020.07.24 |
---|---|
기본형 변수와 참조형 변수 (0) | 2020.07.24 |
Tomcat은 WAS일까 아닐까 (0) | 2020.07.24 |
POJO란 무엇인가? (0) | 2020.07.24 |
JAVA EJB? 이걸 버리고 SPRING을 쓴다? (0) | 2020.07.24 |